2

我最近将我的应用程序从 Phonegap 1.6 升级到了 2.2。我已经重构了所有东西(例如Plugin--> CordovaPlugin)并且我也在使用新的config.xml.

该应用程序可以编译和构建,但是我经常在 logcat 中遇到错误和错误对话框。对话框说[ERROR] Error initializing Cordova: Class not found

logcat 错误是: Line 6048 : Error initializing Network Connection: Class not found

我会错过什么?该问题发生在多个设备上。

更新

我已经将网络状态插件的 config.xml 从Network Status更改为NetworkStatus. 上面写着:<plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager"/>

4

3 回答 3

2

我遇到了这个问题,并通过将以下内容添加到config.xml

<plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager"/>

并将其添加到清单文件中:

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

我最初把它们拿出来是因为我“知道”我的应用程序不会使用任何通信。我忘记了模拟器与 ADK 的“通信”。

当我将项目转换为“生产”时,我会去掉这两条线,以便应用程序为 Google Play 做好准备。

于 2013-04-28T00:35:01.557 回答
0

我在使用 phonegap 3.x 时遇到了这个问题,问题原来是 phonegap 没有正确安装插件,或者他们只是在路上搞砸了。基本上,当您安装插件并为平台构建时,它会从 plugins/org.apache.cordova.core.specific-plugin/www 获取 javascript 文件,并将它们放在 platform/android/assets/www/plugins/org.apache 中。 cordova.core.specific-plugin/www 然后它获取Java文件(或iOS的目标C)并将它们放入platforms/android/src/org/apache/cordova/specificplugin

所有这些都由 plugins/org.apache.cordova.core.specific-plugin/plugin.xml 指定。如果您查看 plugins.xml,您应该会看到如下内容:

<source-file src="src/android/NetworkManager.java" target-dir="src/org/apache/cordova/networkinformation" />

所以这告诉你,在platforms/android/src/org/apache/cordova/networkinformation中,应该有NetworkManager.java。并且可以从 plugins/org.apache.cordova.core.network-information/src/android/NetworkManager.java 复制该文件

现在所有这些都应该自动发生,而无需触及平台文件夹。但是,如果它搞砸了,您可以通过将正确的 java 文件复制到正确的文件夹中来修复它。

于 2013-09-18T23:37:08.683 回答
0

config.xml 中的以下行适用于cordova 6.2android

<plugin name="cordova-plugin-network-information" value="org.apache.cordova.networkinformation"/>

该名称应与您的插件包含的名称相同。您可以在以下路径的项目文件夹中找到它plugins/name-of-the-plugin/package.json。该值应该是插件的包名称,可以在本机实现文件中找到。

于 2017-07-26T03:16:42.507 回答