I have a html5 application that I wrap in a WebView. To store and retrieve 
user input values between pages, I use the *localStorage* html5 feature.

It works fine on my Nexus 4 (Android 4.4.4), but it does not work on 
Samsung Galaxy Tab 2 (Android 4.3.x) (= nothing happens, but also no error 
in logcat). Or, to be more clear: *on Samsung, it does not work if the html 
pages are loaded from within the app's asset folder*. It does work though 
if I put the pages on a web server, as below in the outcommented line.

However, on Nexus 4, loading from file:///android_asset/ and also if I load 
the pages on a desktop browser (Chrome, Firefox) from file:// path, it is 
also working.

(I had another user reported the issue on a LG device, so it does not seem 
to be Samsung specific).

Below are the settings of the web view.

    webView = (WebView)this.findViewById(R.id.webView);
    webViewClient = new MyWebViewClient(this);
    webViewClient.setSm(sm);
    webView.setWebViewClient(webViewClient);
    WebSettings webSettings = webView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setDomStorageEnabled(true);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setDomStorageEnabled(true);
    webView.getSettings().setPluginState(WebSettings.PluginState.ON);
    webView.getSettings().setAppCacheEnabled(false);
    webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
    webView.getSettings().setUseWideViewPort(true);
    webView.getSettings().setLoadWithOverviewMode(true);
    webView.getSettings().setBuiltInZoomControls(false);
    webView.getSettings().setSupportZoom(false);
    webView.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);

    webView.loadUrl("file:///android_asset/01_home.html"); // does NOT work!
    // webView.loadUrl("http://192.168.178.33/01_home.html";); // does work!

Local storage code in the pages:

// storingvar data = document.getElementById('data').value;
window.localStorage.setItem((1), data);
// reading
document.getElementById('data').value = window.localStorage.getItem(1);

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to