来自 Android 7.0 的 android.webkit.WebViewFactory$MissingWebViewPackageException

标签 android crash

偶尔(很少)报告以下崩溃,并且仅来自 Android 7.0 设备:

android.util.AndroidRuntimeException: 
  at android.webkit.WebViewFactory.getProviderClass (WebViewFactory.java:371)
  at android.webkit.WebViewFactory.getProvider (WebViewFactory.java:194)
  at android.webkit.WebViewDatabase.getInstance (WebViewDatabase.java:38)
  at com.amazon.device.ads.AdLayout.isWebViewDatabaseNull (SourceFile:352)
  at com.amazon.device.ads.AdLayout.initializeIfNecessary (SourceFile:260)
  at com.amazon.device.ads.AdLayout.getAdController (SourceFile:303)
  at com.amazon.device.ads.AdLayout.onLayout (SourceFile:478)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.RelativeLayout.onLayout (RelativeLayout.java:1189)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.RelativeLayout.onLayout (RelativeLayout.java:1189)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.LinearLayout.setChildFrame (LinearLayout.java:1982)
  at android.widget.LinearLayout.layoutVertical (LinearLayout.java:1826)
  at android.widget.LinearLayout.onLayout (LinearLayout.java:1735)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.FrameLayout.layoutChildren (FrameLayout.java:383)
  at android.widget.FrameLayout.onLayout (FrameLayout.java:321)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.FrameLayout.layoutChildren (FrameLayout.java:383)
  at android.widget.FrameLayout.onLayout (FrameLayout.java:321)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.LinearLayout.setChildFrame (LinearLayout.java:1982)
  at android.widget.LinearLayout.layoutVertical (LinearLayout.java:1826)
  at android.widget.LinearLayout.onLayout (LinearLayout.java:1735)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.FrameLayout.layoutChildren (FrameLayout.java:383)
  at android.widget.FrameLayout.onLayout (FrameLayout.java:321)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.LinearLayout.setChildFrame (LinearLayout.java:1982)
  at android.widget.LinearLayout.layoutVertical (LinearLayout.java:1826)
  at android.widget.LinearLayout.onLayout (LinearLayout.java:1735)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.widget.FrameLayout.layoutChildren (FrameLayout.java:383)
  at android.widget.FrameLayout.onLayout (FrameLayout.java:321)
  at com.android.internal.policy.DecorView.onLayout (DecorView.java:751)
  at android.view.View.layout (View.java:17838)
  at android.view.ViewGroup.layout (ViewGroup.java:5754)
  at android.view.ViewRootImpl.performLayout (ViewRootImpl.java:2698)
  at android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2371)
  at android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:1462)
  at android.view.ViewRootImpl$TraversalRunnable.run (ViewRootImpl.java:6960)
  at android.view.Choreographer$CallbackRecord.run (Choreographer.java:907)
  at android.view.Choreographer.doCallbacks (Choreographer.java:709)
  at android.view.Choreographer.doFrame (Choreographer.java:644)
  at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:893)
  at android.os.Handler.handleCallback (Handler.java:836)
  at android.os.Handler.dispatchMessage (Handler.java:103)
  at android.os.Looper.loop (Looper.java:208)
  at android.app.ActivityThread.main (ActivityThread.java:6267)
  at java.lang.reflect.Method.invoke (Native Method)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1063)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:924)
Caused by: android.webkit.WebViewFactory$MissingWebViewPackageException: 
  at android.webkit.WebViewFactory.getWebViewContextAndSetProvider (WebViewFactory.java:270)
  at android.webkit.WebViewFactory.getProviderClass (WebViewFactory.java:330)

堆栈跟踪不包含与应用程序相关的任何内容,因此我不知道从哪里查看。任何人都可以对此有所了解吗?如何预防?

最佳答案

这是因为 Webview 在您尝试在您的应用程序中使用它的同时通过 google play 进行了更新。

更多信息在这里: https://bugs.chromium.org/p/chromium/issues/detail?id=506369

关于来自 Android 7.0 的 android.webkit.WebViewFactory$MissingWebViewPackageException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46278681/

相关文章:

Android M 指纹安全

android - 如何在 ejabberd 服务器中启用流管理?

android - 使用 Mockito 和 kotlin 时,类文字的左侧只允许类

启动应用程序时 Ruby 崩溃。是环境吗?

java - android.widget.FrameLayout.layoutChildren

java - 无法使用可执行文件/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home/bin/java 确定 Java 版本

android - 信号 11 (SIGSEGV),代码 1 (SEGV_MAPERR)

objective-c - 尝试添加核心位置时出现未知问题

iphone - 使用在线服务的可靠iPhone应用程序的提示

crash - Xcode 7 UITextView 奇怪的行为导致 View 加载失败