美文网首页
AwContents must be created if we

AwContents must be created if we

作者: 寻水的鱼Chock | 来源:发表于2021-08-05 12:51 被阅读0次

    1、问题描述

    部分手机在应用第一次创建WebView时会抛出java.lang.IllegalStateException: AwContents must be created if we are not posting!异常, 导致应用崩溃。
    崩溃堆栈:

    Caused by: java.lang.IllegalStateException: AwContents must be created if we are not posting!
         at K7.b(chromium-TrichromeWebViewGoogle.apk-stable-410410183:5)
         at com.android.webview.chromium.WebViewChromium.b(chromium-TrichromeWebViewGoogle.apk-stable-410410183:1)
         at com.android.webview.chromium.WebViewChromium.addJavascriptInterface(chromium-TrichromeWebViewGoogle.apk-stable-410410183:1)
         at j9.run(chromium-TrichromeWebViewGoogle.apk-stable-410410183:1)
         at Mu.b(chromium-TrichromeWebViewGoogle.apk-stable-410410183:3)
         at ka.i(chromium-TrichromeWebViewGoogle.apk-stable-410410183:77)
         at ka.b(chromium-TrichromeWebViewGoogle.apk-stable-410410183:15)
         at ka.k(chromium-TrichromeWebViewGoogle.apk-stable-410410183:2)
         at com.android.webview.chromium.WebViewChromiumFactoryProvider.h(chromium-TrichromeWebViewGoogle.apk-stable-410410183:2)
         at com.android.webview.chromium.WebViewChromium.init(chromium-TrichromeWebViewGoogle.apk-stable-410410183:14)
         at android.webkit.WebView.<init>(WebView.java:429)
         at android.webkit.WebView.<init>(WebView.java:353)
         at android.webkit.WebView.<init>(WebView.java:336)
         at android.webkit.WebView.<init>(WebView.java:323)
        ... 42 more
    

    2、分析过程

    搜遍了全网, 也只找到了一篇类似的文章。通篇阅读也没找到有效的解决方案,但从中得到一些有效的信:
    1)此问题出现在底层 ;
    2)非应用层所能控制;
    3)只出现在部分手机上;
    4)是调用先后顺序的问题导致的;

    3、解决方案

    在实际创建WebView之前,额外再创建一个不需要使用的WebView对象,让其先崩溃一次,以保护住实际需要使用时不崩溃。

    try {
        //部分手机第一次创建Web会崩溃, 让他自己先崩一次再创建正常的WebView
        //"AwContents must be created if we are not posting!"
        new WebView(getContext());
    } catch (Exception e) {
        e.printStackTrace();
    }
    setContentView(R.layout.activity_webview);
    .....
    

    相关文章

      网友评论

          本文标题:AwContents must be created if we

          本文链接:https://www.haomeiwen.com/subject/zgsmvltx.html