美文网首页
前段时间 WebView遇到的问题集 2020-05-13

前段时间 WebView遇到的问题集 2020-05-13

作者: 薇薇浆糊 | 来源:发表于2020-05-13 14:37 被阅读0次

    BUG 1

    问题表现:

    webView空白,但是更换了url之后显示正常,一度认为是前端html的不兼容导致的,其实是对前端技术的不理解导致的;

    问题分析

    前端html文件放到WebView加载,正常会走WebViewClient中的onPageStarted(WebViewview, Stringurl, Bitmapfavicon)方法和onPageFinished(WebViewview, Stringurl)方法。
    测试中https://www.baidu.com会顺利走完这两个方法,但是部分网页就不走onPageFinished方法了。
    于是质问前端小哥的代码,反复讨论得知:JS没加载完,就会白屏;不用于https://www.baidu.com这个地址的是,我们的网页包含了定时器;
    根据前端小哥提示:看看什么情况下会导致JS加载不完,得到答案,部分页面切换,导致JS的定时器被暂停,但是重新回来的时候,并没有及时重新调起定时器;

    问题解决方案:

    @Override

    public void onDestroy(){

        webView.stopLoading();

        webView.setWebChromeClient(null);

        webView.setWebViewClient(null);

        webView.destroy();

        super.onDestroy();

        EventBus.getDefault().unregister(this);

    }

    @Override

    public void onResume(){

        super.onResume();

        webView.onResume();

        webView.resumeTimers();

    }

    @Override

    public void onPause(){

        super.onPause();

        webView.onPause();

        webView.pauseTimers();

    }

    相关文章

      网友评论

          本文标题:前段时间 WebView遇到的问题集 2020-05-13

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