recherche

Maison  >  Questions et réponses  >  le corps du texte

android - WebView偶尔无法加载,没有发起请求

webview有时候加载不出网页,页面关掉再打开也不行,显示一片空白。放着不动,过一会,反而能打开网页。

当加载不出的时候,发现根本没有发起请求。

有大神知道原因吗?

高洛峰高洛峰2887 Il y a quelques jours831

répondre à tous(4)je répondrai

  • 阿神

    阿神2017-04-17 17:50:28

    WebViewCe contrôle est un contrôle très important dans le système Android, et il ne provoquera pas la situation mentionnée par l'affiche. Ce que l'affiche originale peut voir, c'est l'affichage en surface.

    Lorsque WebView de loadUrl(String url) est appelé, WebView commence à charger la page Web, mais lorsqu'elle n'est pas chargée, elle affichera toujours son fond blanc d'origine. La page Web ne sera affichée qu'après son chargement. . Cela peut signifier que l'écran devient vide et qu'il faut un certain temps avant que la page Web puisse être ouverte. En fait, il se charge toujours, mais il se charge lentement et vous ne voyez aucun changement.

    L'hôte peut utiliser WebView.setWebViewClient pour transmettre un WebViewClient personnalisé. Aussi WebView.setWebChromeClient. Remplacez certaines de ces fonctions :

    webView.setWebViewClient(new WebViewClient() {
    
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            //页面开始加载
        }
    
        @Override
        public void onPageFinished(WebView view, String url) {
            //页面加载完毕
        }
    
        @Override
        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
            //加载出现失败
            super.onReceivedError(view, errorCode, description, failingUrl);
        }
    
    });
    webView.setWebChromeClient(new WebChromeClient() {
    
        public void onProgressChanged(WebView view, int progress) {
            //加载过程回调,progress是接受到的数据的百分比
        }
    
    });
    

    Si l'affiche configure WebView comme ci-dessus, alors dans loadUrl(String url), vous pouvez voir les rappels de ces fonctions. Le contenu de la question peut être répondu à partir de Log.

    répondre
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:50:28

    1. J'ai vraiment rencontré cette situation hier
    2. Analyse des raisons : A. Je suggère à l'affiche d'utiliser Charles pour capturer le paquet

           B.我的原因:加载url的时候,一下子激增了ajax请求与图片请求
           C.我的解决方法:让前端的同学做一下分页加载以及懒加载,不要在打开url的瞬间发出那么多请求

    répondre
    0
  • 巴扎黑

    巴扎黑2017-04-17 17:50:28

    C'est effectivement le cas, je l'ai également rencontré, et j'ai constaté que si vous n'appelez pas wv_viewerweb.removeAllViews();
    // wv_viewerweb.destroy();
    // wv_viewerweb = null this; le problème n'existera pas

    répondre
    0
  • ringa_lee

    ringa_lee2017-04-17 17:50:28

    Le problème est-il résolu ? ? ? Je suis aussi tombée dans un piège, s'il vous plaît donnez-moi une solution...

    répondre
    0
  • Annulerrépondre