La función localStorage html5 no funciona en WebView en el dispositivo Samsung Android

Tengo una aplicación html5 que envuelvo con un WebView. Para almacenar y recuperar valores de entrada de usuario entre páginas, utilizo elalmacenamiento local Característica html5.

Funciona bien en mi Nexus 4 (Android 4.4.4), pero no funciona en Samsung Galaxy Tab 2 (Android 4.3.x) (= no sucede nada, pero tampoco hay error en logcat). O, para ser más claro:en Samsung, no funciona si las páginas html se cargan desde la carpeta de activos de la aplicación. Sin embargo, funciona si pongo las páginas en un servidor, como se muestra a continuación en la línea comentada.

Sin embargo, en Nexus 4, cargar desde el archivo: /// android_asset / y también si cargo las páginas en un navegador de escritorio (Chrome, Firefox) desde el archivo: // ruta, también funciona.

Actualización 1: Acabo de tener otro usuario que informó el problema con un dispositivo LG, por lo que no parece ser específico de Samsung.

Actualización 2: Sin embargo, almacenar y cargar el valor de localStorage funciona bien en todos los dispositivos en la misma página, no entre páginas diferentes. En mi ejemplo, puedo almacenar y recuperar el valor en 01_home.html, pero cuando voy a otra página en la carpeta android_asset, ya no puedo leerlo (en dispositivos LG, Samsung). Sin embargo, funciona bien en Nexus 4.

A continuación se muestran las configuraciones de la vista web.

    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!

Código de almacenamiento local en las páginas:

// storing
var data = document.getElementById('data').value;
window.localStorage.setItem((1), data);

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