Webview有一个问题,因为它不会使用缓存。我启动我的应用程序,加载HTML5页面,然后退出页面,在手机上进入飞行模式,然后再次尝试转到网页。它应该被缓存,但我收到一条消息,说无法检索URL。
这是我的相关代码。我做错什么了吗???
String weblink = "http://abcd.com";
final ConnectivityManager conMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
final NetworkInfo activeNetwork = conMgr.getActiveNetworkInfo();
if (activeNetwork != null && activeNetwork.isConnected()) {
progressBar = ProgressDialog.show(this, "Please Wait", "loading online..");
mWebview.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
mWebview.getSettings().setAppCacheMaxSize(1024*1024*8);
mWebview.loadUrl(weblink);
setContentView(mWebview);
}
else
{
progressBar = ProgressDialog.show(this, "Please Wait", "loading offline..");
mWebview.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ONLY);
mWebview.loadUrl(weblink);
setContentView(mWebview);
}
您的代码正常。
网站不存在或没有正确缓存,或者您忘记添加以下权限:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permisson.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
Just Remove
setContentView(mWebview);
in
if and else both parts