我试图在我的问题上找到答案,但我在已经打开的问题中找不到任何结果。 我想在我的Android应用程序中加载一个网站并将其保存到缓存中。 当用户没有Internet连接时,应该从缓存加载。 我的应用中的权限是: android.permission.INTERNET对 android.permission.WRITE_EXTERNAL_STORAGE android.permission.ACCESS_NETWORK_STATE android.permisson.ACCESS_WIFI_STATE 活动的代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webview = (WebView) findViewById(R.id.webview);
webview.getSettings().setAppCacheMaxSize( 5 * 1024 * 1024 ); // 5MB
webview.getSettings().setAllowFileAccess( true );
webview.getSettings().setAppCachePath( "/KP");
webview.getSettings().setAppCacheEnabled( true );
try{
if(isNetworkAvailable())
{
webview.clearCache(true);
webview.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
}
else{
webview.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ONLY);
}
}
catch(Exception e){
AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this);
dlgAlert.setMessage("");
dlgAlert.setTitle("Error");
dlgAlert.setCancelable(true);
dlgAlert.create().show();
}
String url="https://google.com";
webview.setWebViewClient(new WebViewClient());
webview.getSettings().setLoadsImagesAutomatically(true);
webview.loadUrl(url);
}
这不起作用,我无法找到有关如何保存缓存并将其加载到离线模式的更多信息。