Android “离子人行横道”;由于运行库的旧版本,无法加载外部扩展;

Android “离子人行横道”;由于运行库的旧版本,无法加载外部扩展;,android,cordova,ionic-framework,crosswalk,Android,Cordova,Ionic Framework,Crosswalk,我一直在开发一款Ionic应用程序,已经成功地在iOS上构建了它,并且正在尝试将其构建到android中,以前的版本构建得很好,但现在当我尝试运行我的应用程序的发布版本时,在加载屏幕大约半秒后,我收到了“不幸,[我的应用程序名称]已停止”的消息。我的环境信息是: Cordova CLI: 6.2.0 Gulp version: CLI version 3.9.0 Gulp local: Local version 3.9.1 Ionic Framework Version: 1.3.0 I

我一直在开发一款Ionic应用程序,已经成功地在iOS上构建了它,并且正在尝试将其构建到android中,以前的版本构建得很好,但现在当我尝试运行我的应用程序的发布版本时,在加载屏幕大约半秒后,我收到了“不幸,[我的应用程序名称]已停止”的消息。我的环境信息是:

Cordova CLI: 6.2.0
Gulp version:  CLI version 3.9.0
Gulp local:   Local version 3.9.1
Ionic Framework Version: 1.3.0
Ionic CLI Version: 1.7.15
Ionic App Lib Version: 0.7.2
Crosswalk Version: 18+
Android SDK version: 23
当我运行adb logcat时,在它崩溃之前收到以下消息:

E/XWalkExternalExtensionManagerImpl(18395): Cannot load external extensions due to old version of runtime library
D/XWalkLib(18395): Init reserved object: class org.crosswalk.engine.XWalkCordovaResourceClient
D/XWalkLib(18395): Call reserved method: public void org.xwalk.core.internal.XWalkViewBridge.setResourceClientSuper(org.xwalk.core.internal.XWalkResourceClientBridge)
D/XWalkLib(18395): Init reserved object: class org.crosswalk.engine.XWalkCordovaUiClient
D/XWalkLib(18395): Call reserved method: public void org.xwalk.core.internal.XWalkViewBridge.setUIClientSuper(org.xwalk.core.internal.XWalkUIClientBridge)
D/XWalkLib(18395): Call reserved method: class org.xwalk.core.internal.XWalkViewBridge.setXWalkViewInternalVisibilitySuper
W/dalvikvm(18395): threadid=1: thread exiting with uncaught exception (group=0x41836438)
E/AndroidRuntime(18395): FATAL EXCEPTION: main
E/AndroidRuntime(18395): java.lang.UnsupportedOperationException: class org.xwalk.core.internal.XWalkViewBridge.setXWalkViewInternalVisibilitySuper
E/AndroidRuntime(18395):    at org.xwalk.core.ReflectMethod.invoke(ReflectMethod.java:57)
E/AndroidRuntime(18395):    at org.xwalk.core.XWalkCoreWrapper.handlePostInit(XWalkCoreWrapper.java:169)
E/AndroidRuntime(18395):    at org.xwalk.core.XWalkLibraryLoader$ActivateTask.onPostExecute(XWalkLibraryLoader.java:306)
E/AndroidRuntime(18395):    at org.xwalk.core.XWalkLibraryLoader$ActivateTask.onPostExecute(XWalkLibraryLoader.java:277)
E/AndroidRuntime(18395):    at android.os.AsyncTask.finish(AsyncTask.java:631)
E/AndroidRuntime(18395):    at android.os.AsyncTask.access$600(AsyncTask.java:177)
E/AndroidRuntime(18395):    at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
E/AndroidRuntime(18395):    at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(18395):    at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(18395):    at android.app.ActivityThread.main(ActivityThread.java:4905)
E/AndroidRuntime(18395):    at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(18395):    at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime(18395):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
E/AndroidRuntime(18395):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
E/AndroidRuntime(18395):    at dalvik.system.NativeStart.main(Native Method)
我尝试了各种版本的crosswalk插件,删除并重新添加了android平台,删除了与上一个版本不同的代码/插件,这个错误不断出现

这是我在config.xml中的人行横道信息

<preference name="xwalkVersion" value="xwalk_core_library_beta:18+" />
<preference name="xwalkCommandLine" value="--disable-pull-to-refresh-effect" />
<preference name="xwalkMode" value="embedded" />
<preference name="xwalkMultipleApk" value="true" />

我已尝试查找未捕获异常错误,由于旧的运行库,无法加载外部扩展,但未找到任何答案。有人知道是什么导致了这个错误吗

提前谢谢

编辑:我认为人行横道没有正确引用外部库可能存在一些问题,我在adb日志中发现了这一点,就在我上面发布的错误上方:

D/XWalkLib(19248): java.lang.UnsatisfiedLinkError: Couldn't load xwalkcore: findLibrary returned null
D/XWalkLib(19248): java.lang.UnsatisfiedLinkError: Cannot load library: load_library[1093]: Library '/data/data/<my-app-id>/app_xwalkcore/libxwalkcore.so' not found
D/XWalkLib(19248):java.lang.UnsatifiedLinkError:无法加载xwalkcore:findLibrary返回null
D/XWalkLib(19248):java.lang.UnsatifiedLinkError:无法加载库:加载库[1093]:库'/data/data//app_xwalkcore/libxwalkcore.so'未找到
当我构建应用程序时,JAVA_HOME下方有一个“null”打印输出:

ANDROID_HOME=/Users/<ME>/Documents/android-sdk-macosx
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home
null
org.xwalk:xwalk_core_library_beta:18+
:preBuild UP-TO-DATE
ANDROID\u HOME=/Users//Documents/ANDROID sdk macosx
JAVA_HOME=/Library/JAVA/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/HOME
无效的
org.xwalk:xwalk\u core\u library\u beta:18+
:预构建最新版本
我的其他应用程序通常都有打印出来的东西,我相信这可能是原因。我还没有找到解决办法,还在寻找


Edit2:如果其他人遇到这种情况,则更新情况。这个问题从来没有真正得到解决,相反,我最终忽视了它。在我构建应用程序的整个过程中,我一直在我的android设备(LG Optimus E973)上测试x86版本,它一直运行正常,我从未尝试过Arm7,因为当时我认为一台设备只能运行其中一台。事实证明,出于某种原因,我不确定这是我做的代码更改还是人行横道库中的更改,但x86版本在我的android设备上不再工作,将立即崩溃。我试过Arm7,它运行得非常好。

我试过构建一个基于Crosswalk插件的ionic应用程序。但我无法重现你面临的问题。这是我的程序

ionic start myApp tabs
cd myApp
ionic platform add android
ionic plugin add cordova-plugin-crosswalk-webview
ionic build android
ionic emulate android
但是,我注意到您正在使用crosswalk的测试版进行构建

<preference name="xwalkVersion" value="xwalk_core_library_beta:18+" />

你能把它换成稳定频道再试一次吗

<preference name="xwalkVersion" value="xwalk_core_library:18+" />

我尝试基于Crosswalk插件构建一个ionic应用程序。但我无法重现你面临的问题。这是我的程序

ionic start myApp tabs
cd myApp
ionic platform add android
ionic plugin add cordova-plugin-crosswalk-webview
ionic build android
ionic emulate android
但是,我注意到您正在使用crosswalk的测试版进行构建

<preference name="xwalkVersion" value="xwalk_core_library_beta:18+" />

你能把它换成稳定频道再试一次吗

<preference name="xwalkVersion" value="xwalk_core_library:18+" />


您是否使用Galaxy Tab3 10.1?我们的一些用户报告了完全相同的问题,并且他们都拥有完全相同的设备(在数百个Android用户中)。版本:xwalk_core_库:18+。我目前正在研究我们以前的人行横道版本(15)是否能解决这些用户的问题。我会让你知道的!我实际上是在LG Optimus E973上测试的,我发现只有x86版本的应用程序遇到了我遇到的问题。我发布了上面发生的事情的最新消息。我认为这个问题仍然存在,因为由于一些无法解释的原因,x86版本停止了正确构建。感谢您的询问,不过我很想知道我在这个设备上遇到的问题是否与您提到的其他用户相同,是否通过恢复到V15解决了问题您是否使用Galaxy Tab3 10.1?我们的一些用户报告了完全相同的问题,并且他们都拥有完全相同的设备(在数百个Android用户中)。版本:xwalk_core_库:18+。我目前正在研究我们以前的人行横道版本(15)是否能解决这些用户的问题。我会让你知道的!我实际上是在LG Optimus E973上测试的,我发现只有x86版本的应用程序遇到了我遇到的问题。我发布了上面发生的事情的最新消息。我认为这个问题仍然存在,因为由于一些无法解释的原因,x86版本停止了正确构建。感谢您的询问,尽管我很想知道我在这台设备上遇到的问题是否与您提到的其他用户相同,是否通过恢复到V15解决了问题。我尝试过运行v18稳定版本以及版本14和17,但我无法让应用程序在这两个版本上运行。我在上面贴了一篇关于当前情况的编辑。不过谢谢你的帮助。我试过运行v18稳定版以及14和17版,但是我无法让应用程序在这两个版本上运行。我在上面贴了一篇关于当前情况的编辑。谢谢你的帮助。