繁体   English   中英

人行横道崩溃,出现AssertionFailedError

[英]Crosswalk crashes with AssertionFailedError

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

致命异常:junit.framework.AssertionFailedError:在org.xwalk.core.XWalkView.setZOrderOnTop(XWalkView.java:1271)处的junit.framework.Assert.fail(Assert.java:50)在org.xwalk.core处无法调用此方法。 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 $ (XWalkLibraryLoader.java:277)在android.os.AsyncTask.finish(AsyncTask.java:632)在android.os.AsyncTask.access $ 600(AsyncTask.java:177)在android.os.AsyncTask $ InternalHandler.handleMessage(AsyncTask .java:645),位于android.os.Handler.dispatchMessage(Handler.java:102),位于android.os.Looper.lo 位于android.app.ActivityThread.main(ActivityThread.java:5034)的op(Looper.java:136)位于java.lang.reflect.Method.invoke(Method的java.lang.reflect.Method.invokeNative(Method.java) .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)

我只是将crosswalk添加为插件,但我认为我没有明确调用任何方法(在xwalk准备就绪之前无法调用此方法)。 有任何想法吗? 提前致谢!

我认为您在XWalkView仍处于未就绪状态时正在对其进行处理。

在最新版本的Crosswalk中,对库的一些更改是在调用onCreate()时尚未加载Crosswalk运行时。 因此,如果要初始化XWalkView或执行某些操作,请等待直到XWalkActivity.onXWalkReady()

解决方案是:

  • XWalkActivity扩展包含XWalkView的活动
  • 重写XWalkActivityonXWalkReady()方法,并在那里对XWalkView做必要的初始化工作

如此处所述: https : //crosswalk-project.org/apis/embeddingapidocs_v5/org/xwalk/core/XWalkActivity.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM