2017-09-14 11 views
0

私はアンドロイドスタジオでwebview appを開発しています。私のアプリのキャッシュ容量を取り込む方法は?

問題は、私のアプリが20.0MB以上をキャッシュしないということです。
設定> ApplicationManager> MyWebviewApp>キャッシュからチェックしました。
キャッシュが20.0MBを超えると、古いキャッシュが削除されたように見えます。

キャッシュ容量を増やすことはできますか?

答えて

0

問題を解決するには、このようにしてください。 Source

WebView wvSubscribeNow = (WebView) findViewById(R.id.your_wv); 
    if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR2) { 
     //noinspection deprecation 
     wvSubscribeNow.getSettings().setAppCacheMaxSize(Long.MAX_VALUE); 
    } 
    if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1) { 
     //noinspection deprecation 
     wvSubscribeNow.getSettings().setEnableSmoothTransition(true); 
    } 
    if (android.os.Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN) { 
     wvSubscribeNow.getSettings().setMediaPlaybackRequiresUserGesture(true); 
    } 
    if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
     wvSubscribeNow.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_COMPATIBILITY_MODE); 
    } 
    wvSubscribeNow.getSettings().setAppCachePath(getApplicationContext().getCacheDir().getAbsolutePath()); 
    wvSubscribeNow.getSettings().setAllowFileAccess(true); 
    wvSubscribeNow.getSettings().setAppCacheEnabled(true); 
    wvSubscribeNow.getSettings().setJavaScriptEnabled(true); 
    wvSubscribeNow.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); 
+0

ありがとうございました。しかし、メソッド 'setAppCacheMaxSize'はAPIレベル18では廃止されました...? – hitonamino

+0

@hitonamino、私の編集した答えを見てください。 – Zia

+0

私はしようとしましたが、うまくいかなかった...キャッシュはまだ20.0MBに制限されているようです。 – hitonamino

0

この希望をお試しください。

WebView view = (WebView) findViewById(R.id.vWeb); 
view.getSettings().setAppCacheEnabled(true); 
view.getSettings().setAppCacheMaxSize(1024 * 1024 * 10); 
+0

ありがとうございます。 APIレベル18で廃止されました...代替方法はありますか? – hitonamino

関連する問題