Android WebView无法正确加载

时间:2016-01-28 21:26:07

标签: android webview

我对Android上的WebViewClient有一些问题。 该网站在任何移动浏览器上都可以完美。包括我为调试目的设置的ChromeViewClient。

我正在加载的网站在使用任何其他移动浏览器时没有任何问题或错误。使用Chrome的检查器并选择设备,使用原生的Android浏览器,并在iOS WebView组件上进行测试以确保。

WebViewClient呈现"部分"的网站。一页而不是另一页上的图像,无法点击的按钮,不起作用的滑块等。我加载的网站非常JavaScript和HTML5密集。我完全没有关于如何进一步调试此问题的想法,是否有某些JavaScript库,WebViewClient无法正确加载?在尝试调试此问题时,您是否建议我实施其他任何方法?或者我错过了一些非常小的东西会让我撞到桌子上?

这些是我们在网站上使用的JS文件:

  • bootstrap.min.js,
  • jquery.min.js,
  • swiper.jquery.min.js,
  • slideout.min.js,
  • owl.carousel.min.js

WebView代码:

this.webview = (WebView)findViewById(R.id.webView);
    webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
    WebSettings settings = webview.getSettings();
    settings.setJavaScriptEnabled(true);
    webview.setWebViewClient(new WebViewClient(){

        public boolean shouldOverrideUrlLoading(WebView view, String url){
            view.loadUrl(url);
            firstLoad = true;

            return true;

        }

        // when the page is finished loading
        public void onPageFinished(WebView view, String url){

        }


        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl){

            Toast.makeText(getBaseContext(), "Could Not load. " + description, Toast.LENGTH_SHORT).show();

            alertDialog.setTitle("Error");
            alertDialog.setMessage(description);
            alertDialog.setButton("OK", new DialogInterface.OnClickListener(){

                public void onClick(DialogInterface dialog, int which){
                    return;
                }

            });

            alertDialog.show();

        }

    });

    webview.loadUrl("mywebsite.com");

1 个答案:

答案 0 :(得分:2)

所以我通过setDomStorageEnabled(true)得到了它;

我从来不知道在使用本地存储时我需要设置它。