2017-09-18 22 views
2

下崩溃是偶尔(很少)报告,只有从的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) 

堆栈跟踪不包含任何有关应用程序,所以我不知道在哪里看这个。任何人都可以对此有所了解吗?如何防止这一点?

回答

2

这是由于Webview是在您尝试在应用程序中使用它的同时通过谷歌播放进行更新的。

此处了解详情: https://bugs.chromium.org/p/chromium/issues/detail?id=506369

+0

谢谢你的指针。你知道这个补救办法吗? – Hong

+1

不是建议(因为你会捕获运行时异常):我想你应该能够捕获MissingWebViewPackageException并显示一个progresspinner,并轮询你尝试使用的组件,每秒一次,当异常不再发生时,你是可以安全地使用webview。但是这似乎是来自亚马逊的一个广告软件包, – Magnus

+1

谢谢。我已禁用亚马逊广告,因为它已导致各种崩溃,ANR。这只是其中之一。 – Hong