我有一个与服务人员合作的网页,该网页在离线模式下,移动Chrome仍然可以显示我的offline.html。
现在我有一个带有网络视图的Android应用程序来显示该页面,但是当没有互联网时,会有一个Android错误页面显示"Webpage not available
The webpage at xxxxxx could not be loaded because: net:ERR_FAILED"
我该如何解决?我可以防止在Andoird APP中检查互联网连接吗?非常感谢你!
答案 0 :(得分:1)
您需要覆盖自己的WebViewClient
并检查shouldOverrideUrlLoading
中的Internet连接
public boolean checkInternetConnection(Context context) {
ConnectivityManager con_manager = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
return (con_manager.getActiveNetworkInfo() != null
&& con_manager.getActiveNetworkInfo().isAvailable()
&& con_manager.getActiveNetworkInfo().isConnected());
}
class CustomWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (!checkInternetConnection(this)) {
view.loadUrl("file:///android_asset/filename.html");
} else {
view.loadUrl(url);
}
return true;
}
}
当然,将您的自定义WebViewClient
设置为WebView
webview.setWebViewClient(new CustomWebViewClient())
还要将filename.html
放入Android项目资产文件夹