我在应用程序中看到很多崩溃,其中的消息用作标题。几乎所有的崩溃都在OnePlus设备上,其中大部分是在Android Oreo分叉的Oxygen OS版本上。有没有人见过这个?以下是堆栈跟踪:
java.lang.RuntimeException: Package not found: com.android.chrome
at android.webkit.WebViewDelegate.getPackageId(WebViewDelegate.java:164)
at com.android.webview.chromium.ig.L(WebViewDelegateFactory.java:16)
at com.android.webview.chromium.WebViewChromiumFactoryProvider.h(WebViewChromiumFactoryProvider.java:177)
at com.android.webview.chromium.se.run(WebViewChromiumFactoryProvider.java:5)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6809)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
编辑:2018年2月18日:
几个星期前我们收到了我们团队的One Plus 5T(OnePlus A5010),在运行我们的应用程序时没有看到任何问题。该设备预装了Android 7.0的OxygenOS前叉。但是,今天该设备收到了Android 8.0.0(OxygenOS 5.0.3)更新通知,并且在成功安装更新后,我们的应用程序崩溃了相同的堆栈跟踪。这次崩溃严重影响了我们的用户群。任何帮助将不胜感激。
答案 0 :(得分:6)
WebView现在由来自Nougat的Chrome控制。 Reference
对我有用的解决方案是在AndroidManifest.xml中评论这些行
<meta-data android:name="preloaded_fonts"
android:resource="@array/preloaded_fonts" />
根据建议here
答案 1 :(得分:2)
您的设备上有多个配置文件吗?
Google(Android Enterprise)支持论坛上有一个known issue与WebView相关。似乎解决方案可能适用于您的问题。
<强>要点:强>
Android Nougat中添加了一项功能,将Chrome WebView设置为默认WebView,默认情况下禁用Android系统WebView应用
以下情况出现问题:
您需要做什么:
为设备上的每个用户启用Chrome 或等待Android系统WebView应用更新到其最新版本(如果设备具有WiFi连接,则会在24小时内自动进行更新)
答案 2 :(得分:1)
您是否碰巧在自己的应用中使用Facebook Audience Network SDK? 遇到同样的崩溃,似乎崩溃与FAN SDK直接相关(使用4.27.1)。当应用尝试从FAN显示广告时,它有时会崩溃(目前仅在OnePlus设备上)。
这尚未100%确认,但可能有所帮助。
编辑:它可能与任何其他广告网络SDK相关,其中许多使用WebView来显示广告。在这种情况下,如果AdMob出现问题,则仅调用FAN SDK作为后备。它很容易发生,它也会导致AdMob崩溃,但SDK会处理它而FAN不会。