我试图找出在Android webview上启用appcache的正确设置。我发现了许多关于这方面的讨论,但没有一个有效。
鉴于AppCache设置正确(适用于chrome),我在webview上的错误设置如下:
mWebView = (WebView) findViewById(R.id.activity_main_webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDatabaseEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setAllowFileAccess(true);
webSettings.setAppCachePath("/data/data/"+ getPackageName() +"/cache");
webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);
webSettings.setAppCacheEnabled(true);
webSettings.setSupportMultipleWindows(true);
mWebView.setVerticalScrollBarEnabled(false);
mWebView.loadUrl("http://www.myapp.com");
知道它为什么不起作用?
答案 0 :(得分:19)
找到解决方案:
应用缓存路径未正确设置。我现在使用follownig代码来定义路径:
String appCachePath = activity.getCacheDir().getAbsolutePath();
webSettings.setAppCachePath(appCachePath);
而不是旧版本:
webSettings.setAppCachePath("/data/data/"+ getPackageName() +"/cache");
希望对其他开发者有用:)