与 Cordova 4.0.0 现有应用程序的人行横道?
Crosswalk with Cordova 4.0.0 existing app?
我可以将现有的 Cordova 4 应用程序迁移到 Crosswalk 吗?在迁移手册中 https://crosswalk-project.org/documentation/cordova/migrate_an_application.html 说 Cordova 3.6 适用于 Crosswalk-10 和更新版本...但我有一个 Cordova 4.0.0 应用程序。
我按照迁移手册中的说明进行操作。我必须在导入人行横道并修改应用程序依赖项后构建应用程序,但出现此错误:
02-20 18:00:22.522: E/AndroidRuntime(1592): 致命异常: main
02-20 18:00:22.522: E/AndroidRuntime(1592): java.lang.RuntimeException: 无法实例化 activity ComponentInfo{co.iridian.shoppingadvisor/co.iridian.shoppingadvisor.CordovaApp}: java.lang.ClassNotFoundException: co.iridian.shoppingadvisor.CordovaApp
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.access$600(ActivityThread.java:130)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.os.Handler.dispatchMessage(Handler.java:99)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.os.Looper.loop(Looper.java:137)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.main(ActivityThread.java:4745)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.reflect.Method.invokeNative(本机方法)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.reflect.Method.invoke(Method.java:511)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 dalvik.system.NativeStart.main(本机方法)
02-20 18:00:22.522: E/AndroidRuntime(1592): 引起: java.lang.ClassNotFoundException: co.iridian.shoppingadvisor.CordovaApp
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:501)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:461)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.Instrumentation.newActivity(Instrumentation.java:1053)
02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974)
Crosswalk 的每个版本都与特定版本的 Cordova 兼容。
人行横道 10 与 Cordova 3.6 兼容。
Crosswalk 9 与 Cordova 3.5 兼容。
如果您使用其他版本的 cordova,它将无法正常工作。
好消息是,并不是因为您使用版本 4 创建的项目不能与 Cordova 3.6 一起使用。
注意不要在 platforms/android 中进行某些更改,在这种情况下,请在继续之前备份这些文件。
首先我们删除 android 平台:
cordova platform remove android
然后我们安装我们要使用的人行横道版本所需的版本:
cordova platform add android@3.6.3
那你就可以按照迁移手册了。
我可以将现有的 Cordova 4 应用程序迁移到 Crosswalk 吗?在迁移手册中 https://crosswalk-project.org/documentation/cordova/migrate_an_application.html 说 Cordova 3.6 适用于 Crosswalk-10 和更新版本...但我有一个 Cordova 4.0.0 应用程序。
我按照迁移手册中的说明进行操作。我必须在导入人行横道并修改应用程序依赖项后构建应用程序,但出现此错误:
02-20 18:00:22.522: E/AndroidRuntime(1592): 致命异常: main 02-20 18:00:22.522: E/AndroidRuntime(1592): java.lang.RuntimeException: 无法实例化 activity ComponentInfo{co.iridian.shoppingadvisor/co.iridian.shoppingadvisor.CordovaApp}: java.lang.ClassNotFoundException: co.iridian.shoppingadvisor.CordovaApp 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1983) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.access$600(ActivityThread.java:130) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.os.Handler.dispatchMessage(Handler.java:99) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.os.Looper.loop(Looper.java:137) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.main(ActivityThread.java:4745) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.reflect.Method.invokeNative(本机方法) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.reflect.Method.invoke(Method.java:511) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 dalvik.system.NativeStart.main(本机方法) 02-20 18:00:22.522: E/AndroidRuntime(1592): 引起: java.lang.ClassNotFoundException: co.iridian.shoppingadvisor.CordovaApp 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:501) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:461) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.Instrumentation.newActivity(Instrumentation.java:1053) 02-20 18:00:22.522: E/AndroidRuntime(1592): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1974)
Crosswalk 的每个版本都与特定版本的 Cordova 兼容。
人行横道 10 与 Cordova 3.6 兼容。
Crosswalk 9 与 Cordova 3.5 兼容。
如果您使用其他版本的 cordova,它将无法正常工作。
好消息是,并不是因为您使用版本 4 创建的项目不能与 Cordova 3.6 一起使用。
注意不要在 platforms/android 中进行某些更改,在这种情况下,请在继续之前备份这些文件。
首先我们删除 android 平台:
cordova platform remove android
然后我们安装我们要使用的人行横道版本所需的版本:
cordova platform add android@3.6.3
那你就可以按照迁移手册了。