我正在尝试通过phonegap / cordova API检查已建立的网络连接,但是,它无法正常工作。
我按照cordova文档中的说明添加了插件,phonegap local plugin list
提供了[phonegap] org.apache.cordova.network-information
。
然而,只需致电
document.addEventListener("deviceready", function () {
alert(Object.keys(navigator.connection));
}, false);
我的手机上的结果(Android 4.0.4)始终返回0
,并在使用Android 4.4.2日志的模拟器上运行到LogCat navigator.connection
未定义。实际上,在alert(Object.keys(navigator));
这两台计算机上都不会显示connection
密钥。
任何解决方案?
与Cordova 3.3.0的Phonegap
答案 0 :(得分:3)
安装插件时,它会将文件复制到www / plugins并更新android.json
然后在构建项目时,构建将java复制到platforms / android / src / ...并将js文件复制到platforms \ android \ assets \ www \ plugins(并在plugin.xml中定义任何自定义)
我多次看到android.json未正确更新,javascript文件未被复制。删除和重新安装插件解决了我的问题。
如果您没有对platforms / android文件夹执行手动自定义,我认为清理项目的最简单方法是清空/ plugins文件夹和platforms文件夹,然后重新安装所需的所有插件。 / p>
答案 1 :(得分:0)
我遇到了同样的问题,发现我必须运行“cordova build”,然后状态才能正确返回。
<强>提防强> 当我运行cordova构建时,它似乎占用了我的〜/ app / www目录中的所有内容,覆盖 app / platforms / android / assets / www /
中的所有内容我的“安装过程”如下:
cordova create app com.app "App"
cd app
cordova platform add android
cordova plugin add org.apache.cordova.network-information
cordova plugin add org.apache.cordova.camera
cordova plugin add org.apache.cordova.geolocation
cordova build
然后我可以在app / www中进行代码更改,当快乐时,使用'cordova build''部署'它(似乎总是将文件复制到app / platforms / android / assets / www /.
如果我使用:(例如)
添加另一个插件cordova plugin add org.apache.cordova.file
然后我需要运行
cordova build
让它发挥作用。
我希望这会有所帮助
(我使用的是cordova 3.3.1-0.1.2)