java – 错误升级cordova应用程序

前端之家收集整理的这篇文章主要介绍了java – 错误升级cordova应用程序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
由于安全性考虑,我正在尝试从cordova 3.5.0更新一个phone应用程序到cordova 5.1.1.
当我启动应用程序,我得到以下错误,但我不明白他们来自哪里..你能帮助我建议在哪里调查?
W/System.err( 1672): org.json.JSONException: Value PluginManager at 0 of type java.lang.String cannot be converted to int
W/System.err( 1672):    at org.json.JSON.typeMismatch(JSON.java:100)
W/System.err( 1672):    at org.json.JSONArray.getInt(JSONArray.java:357)
W/System.err( 1672):    at org.apache.cordova.CordovaBridge.promptOnJsPrompt(CordovaBridge.java:131)
W/System.err( 1672):    at org.apache.cordova.engine.SystemWebChromeClient.onJsPrompt(SystemWebChromeClient.java:119)
W/System.err( 1672):    at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:655)
W/System.err( 1672):    at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 1672):    at android.os.Looper.loop(Looper.java:137)
W/System.err( 1672):    at android.app.ActivityThread.main(ActivityThread.java:4745)
W/System.err( 1672):    at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 1672):    at java.lang.reflect.Method.invoke(Method.java:511)
W/System.err( 1672):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
W/System.err( 1672):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
W/System.err( 1672):    at dalvik.system.NativeStart.main(Native Method)
W/System.err( 1672): org.json.JSONException: Value App at 0 of type java.lang.String cannot be converted to int
W/System.err( 1672):    at org.json.JSON.typeMismatch(JSON.java:100)
W/System.err( 1672):    at org.json.JSONArray.getInt(JSONArray.java:357)
W/System.err( 1672):    at org.apache.cordova.CordovaBridge.promptOnJsPrompt(CordovaBridge.java:131)
W/System.err( 1672):    at org.apache.cordova.engine.SystemWebChromeClient.onJsPrompt(SystemWebChromeClient.java:119)
W/System.err( 1672):    at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:655)
W/System.err( 1672):    at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 1672):    at android.os.Looper.loop(Looper.java:137)
W/System.err( 1672):    at android.app.ActivityThread.main(ActivityThread.java:4745)
W/System.err( 1672):    at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 1672):    at java.lang.reflect.Method.invoke(Method.java:511)
W/System.err( 1672):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
W/System.err( 1672):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
W/System.err( 1672):    at dalvik.system.NativeStart.main(Native Method)
W/System.err( 1672): org.json.JSONException: Value File at 0 of type java.lang.String cannot be converted to int
W/System.err( 1672):    at org.json.JSON.typeMismatch(JSON.java:100)
W/System.err( 1672):    at org.json.JSONArray.getInt(JSONArray.java:357)
W/System.err( 1672):    at org.apache.cordova.CordovaBridge.promptOnJsPrompt(CordovaBridge.java:131)
W/System.err( 1672):    at org.apache.cordova.engine.SystemWebChromeClient.onJsPrompt(SystemWebChromeClient.java:119)
W/System.err( 1672):    at android.webkit.CallbackProxy.handleMessage(CallbackProxy.java:655)
W/System.err( 1672):    at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 1672):    at android.os.Looper.loop(Looper.java:137)
W/System.err( 1672):    at android.app.ActivityThread.main(ActivityThread.java:4745)
W/System.err( 1672):    at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 1672):    at java.lang.reflect.Method.invoke(Method.java:511)
W/System.err( 1672):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
W/System.err( 1672):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
W/System.err( 1672):    at dalvik.system.NativeStart.main(Native Method)

解决方法

编辑:我没有通过其他答案的所有意见,我现在意识到这个答案可能不是真的有用的OP,但无论如何,它可能会帮助有人与科尔多瓦3.x-> 5迁移战斗…

当您更新cordova时,您经常还要更新平台和插件.

因此,像您那样升级CLI后,您必须删除所有平台和插件,然后重新安装.

(如果您只有在平台上想要保存的内容)

在我们开始之前,保存你使用的插件的列表

cordova plugin list

然后我们清理一切(Windows命令提示符):

rd /s/q platforms
rd /s /q plugins

或者对于linux / OS X:

rm -rf platforms
rm -rf plugins

请注意,它是一种“粗暴”的方式来删除平台和插件,你可以只是运行cordova平台删除android,然后你将不得不处理的文件platforms.json,你可以使用cordova插件删除…为每个插件,但它会更长.

然后您使用cordova插件添加…来重新添加所有的插件.

小心,cordova 5的核心插件现在使用npm而不是git,所以每个插件你必须检查新的id或者你可能会得到旧的版本.

例如,使用

cordova plugin add cordova-plugin-camera

代替

cordova plugin add org.apache.cordova.camera

最后你必须添加负责安全的新插件

cordova plugin add cordova-plugin-whitelist

并在config.xml中配置它,并在您的html中添加一个CSP元标记.

并重新添加平台:

cordova plugin add android
原文链接:https://www.f2er.com/java/122771.html

猜你在找的Java相关文章