WebView überprüfen, ob Cache existiert / Cache-Alter

  • 1 Antworten
  • Letztes Antwortdatum
T

tefracky

App-Anbieter (kostenlos)
184
Hallo,

ich habe eine WebView-Anzeige, welche auch die Webseite Cached. Ist kein Internet verfügbar, wird der Cache geladen. Gibt es eine Möglichkeit, auch eine Meldung anzuzeigen, wenn weder Cache noch Internet verfügbar sind? Kann ich auch gleichzeitig das Cache-Alter und dessen Gültigkeit anzeigen lassen?

Hier der entsprechende Code, den ich verwende:

Code:
String cacheDir = getApplicationContext().getCacheDir().getAbsolutePath();

        WebSettings webviewSettings = mWebView.getSettings();

        webviewSettings.setSupportZoom(true);

        webviewSettings.setDomStorageEnabled(true);
        webviewSettings.setAppCacheMaxSize(1024 * 1024 * 8);
        webviewSettings.setAppCachePath(cacheDir);
        webviewSettings.setAllowFileAccess(true);
        webviewSettings.setAppCacheEnabled(true);
        webviewSettings.setCacheMode( WebSettings.LOAD_DEFAULT );

        // Offline Support
        if ( isNetworkAvailable() ) {
            webviewSettings.setCacheMode(WebSettings.LOAD_DEFAULT);
            mWebView.loadUrl("www.....");
            textView.setText("Live-Ansicht");
        } else {
            webviewSettings.setCacheMode(WebSettings.LOAD_CACHE_ONLY);
            mWebView.loadUrl("www......");
            textView.setText("Offline-Ansicht");
        }


    private boolean isNetworkAvailable() {
        ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
        assert connectivityManager != null;
        NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
        return activeNetworkInfo != null && activeNetworkInfo.isConnected();
    }
 
Hat niemand eine Idee?
 
Zurück
Oben Unten