我遇到了一些关于 Android 上的 WebViewClient 的问题。该网站在任何移动浏览器上都能完美运行。包括我为调试目的设置的 ChromeViewClient。
使用任何其他移动浏览器时,我正在加载的网站没有任何问题或错误。使用 Chrome 的检查器并选择设备,使用如上所述的本机 Android 浏览器,并在 iOS WebView 组件上进行测试以确保。
WebViewClient 呈现网站的“部分”。图像在一个页面上而不是在另一个页面上、无法单击的按钮、不起作用的滑块等等。我正在加载的网站是 JavaScript 和 HTML5 密集型的。我完全不知道如何进一步调试这个问题,是否有某些 WebViewClient 无法正确加载的 JavaScript 库?在尝试调试此问题时,您是否建议我实施任何其他方法?或者我是否错过了一些非常小的事情,会让我的头撞到桌子上?
这些是我们在网站上使用的 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");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4100 次 |
| 最近记录: |