8

Crashlytics 报告了以下问题,这影响了我的应用程序的很大一部分用户:

致命异常:junit.framework.AssertionFailedError:在 junit.framework.Assert.fail(Assert.java:50) 在 org.xwalk.core.XWalkView.setZOrderOnTop(XWalkView.java:1271) org.crosswalk.engine.XWalkWebViewEngine.initWebViewSettings(XWalkWebViewEngine.java:193) 在 org.crosswalk.engine.XWalkWebViewEngine.access$000(XWalkWebViewEngine.java:55) 在 org.crosswalk.engine.XWalkWebViewEngine$2.run(XWalkWebViewEngine.java: 90) 在 org.xwalk.core.XWalkLibraryLoader$ActivateTask.onPostExecute(XWalkLibraryLoader.java:314) 在 org.xwalk.core.XWalkLibraryLoader$ActivateTask.onPostExecute 的 org.xwalk.core.XWalkActivityDelegate.onActivateCompleted(XWalkActivityDelegate.java:179) (XWalkLibraryLoader.java:277) 在 android.os.AsyncTask。在 android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645) 在 android.os.AsyncTask.access$600(AsyncTask.java:177) 在 android.os.Handler.dispatchMessage( Handler.java:102) 在 android.os.Looper.loop(Looper.java:136) 在 android.app.ActivityThread.main(ActivityThread.java:5034) 在 java.lang.reflect.Method.invokeNative(Method.java ) 在 java.lang.reflect.Method.invoke(Method.java:515) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 在 com.android.internal.os.ZygoteInit。 main(ZygoteInit.java:602) 在 dalvik.system.NativeStart.main(NativeStart.java)handleMessage(AsyncTask.java:645) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:136) 在 android.app.ActivityThread.main(ActivityThread.java :5034) 在 java.lang.reflect.Method.invoke(Method.java:515) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run( ZygoteInit.java:786) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602) 在 dalvik.system.NativeStart.main(NativeStart.java)handleMessage(AsyncTask.java:645) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:136) 在 android.app.ActivityThread.main(ActivityThread.java :5034) 在 java.lang.reflect.Method.invoke(Method.java:515) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run( ZygoteInit.java:786) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602) 在 dalvik.system.NativeStart.main(NativeStart.java)com.android.internal.os.ZygoteInit 的 reflect.Method.invoke(Method.java:515)$MethodAndArgsCaller.run(ZygoteInit.java:786) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:第602章)com.android.internal.os.ZygoteInit 的 reflect.Method.invoke(Method.java:515)$MethodAndArgsCaller.run(ZygoteInit.java:786) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:第602章)

我只是将人行横道添加为插件,我认为我没有显式调用任何方法(在 xwalk 准备好之前无法调用此方法)。有任何想法吗?提前致谢!

4

1 回答 1

1

我认为您正在做一些事情,XWalkView而它仍处于未就绪状态。

onCreate()在最新版本的 Crosswalk 中,对调用Crosswalk 运行时尚未加载的 lib 有一些更改。因此,如果您想初始化XWalkView或做某事,请等到XWalkActivity.onXWalkReady()被调用。

解决方案是:

  • 扩展包含XWalkViewfrom的活动XWalkActivity
  • 覆盖XWalkActivity的方法,并在那里onXWalkReady()做必要的初始化工作XWalkView

正如这里已经说明的那样:https ://crosswalk-project.org/apis/embeddingapidocs_v5/org/xwalk/core/XWalkActivity.html

于 2016-10-31T16:23:05.703 回答