2014-02-09 143 views
1

我試過在this post推薦setTimeout的解決方案,但仍logcat中報道:的PhoneGap /科爾多瓦3安卓:連接還沒有定義

Uncaught ReferenceError: Connection is not defined 

我與「PhoneGap的插件列表」選中該插件確實安裝。 config.xml文件包括:

<feature name="NetworkStatus"> 
    <param name="android-package" value="org.apache.cordova.networkinformation.NetworkManager" /> 
</feature> 

和我的清單包括:

<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /> 

(對不起,我似乎不能夠格式化上述正確) 但我繼續得到「不可連接定義」。 我錯過了什麼?

回答

5

從PhoneGap的DOC:

訪問功能

作爲版本3.0,科爾多瓦實現設備級的API作爲插件。 使用CLI的插件命令,在命令行界面描述, 添加或刪除這個功能的一個項目:

$ cordova plugin add org.apache.cordova.network-information 
or 
$ phonegap plugin add org.apache.cordova.network-information 

而且不要忘記添加插件後重建項目。

+1

謝謝你,QuickFix。這些命令中的第二個是我如何安裝插件,正如我所提到的,「phonegap插件列表」命令顯示插件確實已安裝。該項目已經重建。我找不到是否使用Cordova 3,我會在Eclipse項目中的某處看到一個插件目錄。我不。 – munder

+1

當您在eclipse中導入項目時,是否將選項「Copy projects into workspace」取消選中?在eclipse項目中,您應該看到/ assets/www/plugins文件夾,其中包含插件的JavaScript部分。 – QuickFix

+1

當我第一次將項目導入Eclipse時,所有相關的東西都被導入。不過,我已經發現,使用從項目根目錄中爲Cordova 3安裝插件的新CLI方法,cordova_plugins.js將在[項目根目錄] /platform/android/.staging/www中更新,而不是在[項目根目錄] /平臺/安卓/資產/ WWW。一旦我發現了,我可以將它複製到正確的位置,現在它可以正常工作。謝謝你的建議。 – munder

0

對我來說,解決方法是在「deviceready」發射後調用它。在未定義之前。我想這就是爲什麼超時解決方案有效,在我們等待時準備好的設備被調用。