在我的应用程序中,我有一个webView,这个webView在几个具有各种操作系统的设备中完美运行,但它只适用于wifi。如果我关闭wifi并打开移动数据,webView不会加载任何内容。这是我用于webview的代码。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
webView.setLayerType(View.LAYER_TYPE_HARDWARE, null);
} else {
webView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setAllowContentAccess(true);
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setDatabaseEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setLoadWithOverviewMode(false);
webView.getSettings().setUseWideViewPort(true);
webView.setWebViewClient(new MyWebViewClient());
webView.loadUrl(url);
答案 0 :(得分:2)
可能导致互联网问题或链接无效
尝试实施onReceivedError
以查看加载网址时是否发生任何错误
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
@SuppressWarnings("deprecation")
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Log.e(TAG,errorCode + " : " + description + " at " + failingUrl);
}
});