phonegap - navigator.connection.type未定义

ale*_*lex 5 networking android navigator cordova

我试图通过phonegap/cordova API检查已建立的网络连接,但是,它无法正常工作.

我按照cordova文档中的说明添加了插件,并phonegap local plugin list给出了[phonegap] org.apache.cordova.network-information.

但是,只需打电话

document.addEventListener("deviceready", function () {
  alert(Object.keys(navigator.connection));
}, false);
Run Code Online (Sandbox Code Playgroud)

我的手机(Android 4.0.4)上的结果总是返回0并在Android 4.4.2仿真器上运行,navigator.connection并且未定义到LogCat .事实上,在两台机器上都alert(Object.keys(navigator));没有显示connection关键.

有解决方案吗

与Cordova 3.3.0的Phonegap

Qui*_*Fix 3

当您安装插件时,它会将文件复制到 www/plugins 并更新 android.json

然后,当您构建项目时,构建会将java复制到platforms/android/src/...,并将js文件复制到platforms\android\assets\www\plugins(并执行plugin.xml中定义的任何自定义)

我多次看到 android.json 未正确更新且 javascript 文件未复制。删除并重新安装插件解决了我的问题。

如果您没有对platforms/android文件夹执行手动自定义,我认为清理项目的最简单方法是清空/plugins文件夹和platforms文件夹,然后重新安装您需要的所有插件。

  • 抱歉,我花了这么长时间,我不小心毁掉了我的项目,直到现在才不得不重建。多亏了你,我才成功。phonegap 的文档真的很烦人......:/ (2认同)