【发布时间】:2018-03-29 03:30:07
【问题描述】:
我正在使用WebView 查看网站内容。如果没有互联网连接,我使用以下代码显示错误页面:
mywebview.setWebViewClient(new WebViewClient(){
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
mywebview.loadUrl("file:///android_asset/error.html");
}
});
}
如果这是第一次打开应用程序,它工作正常,但如果你在没有互联网连接的情况下再次打开它,错误页面不会出现,但它使用缓存版本并显示网站..你可以打开您之前打开的任何页面 - 第一次 - 但其他页面在您尝试打开时冻结并且不执行任何操作。
我需要的是在您每次打开应用程序时以及在应用程序运行时监控互联网连接,并显示一条消息告诉用户没有连接。
【问题讨论】:
-
如果你想清除缓存,那么下次加载 webview 时它将不支持缓存页面使用“mywebview.clearCache(true);”。为什么要两次调用“setWebViewClient(new WebViewClient())”?
-
@Abhishek 谢谢..您的清晰缓存代码工作正常并解决了问题的第一部分..现在每次应用程序在没有互联网的情况下工作时都会出现错误页面..但我仍然想显示一条消息如果用户在使用该应用程序时失去连接,因为发生这种情况时网站内容冻结......并且两次调用它是一个错误,我编辑了代码..
-
你是说需要检测没有互联网连接?从互联网获取信息,您正在调用一些 api 或 url。要调用这样的 api 或加载 url,您使用任何纯 android 代码或 javascript 或 jquery 什么样的代码?所以我也可以试试。
-
@Abhishek 它是 javascript ...