HTML localStorage имеет значение null на Android при использовании webview

Я пытаюсь использовать локальное хранилище из моего локального веб-приложения, вот часть инициализации WebView:

static class MyWebView extends WebView
        {
            public MyWebView(Context context)
            {
            super(context);

            this.getSettings().setJavaScriptEnabled(true);

            //enable support for DOM Storage and Database
            this.getSettings().setDatabaseEnabled(true);
            this.getSettings().setDomStorageEnabled(true);


            String databasePath = context.getDir("database", Context.MODE_PRIVATE).getPath();

            this.getSettings().setDatabasePath(databasePath);


            this.setVerticalScrollbarOverlay(true);
        } }

и вот тестовое приложение на JavaScript:

function testStorage() 
    {
        var storage = window.localStorage;
        if (storage) {
            try {
                storage.setItem("name", "Hello World!"); //saves to the database, “key”, “value”
            } catch (e) {

                    alert(e.message); //data wasn’t successfully saved due to quota exceed so throw an error
            }
            document.write(storage.getItem("name")); //Hello World!
            storage.removeItem('name'); 
        }
        else {
            alert('Your browser does not support HTML5 localStorage. Because Storage is' + storage);
        }
    }

, но проблема в что localStorage всегда имеет значение null, я проверил разрешения и создал WebChromeClient с

@Override
            public void onExceededDatabaseQuota(String url,
                    String databaseIdentifier,
                    long currentQuota,
                    long estimatedSize,
                    long totalUsedQuota,
                    WebStorage.QuotaUpdater quotaUpdater)
            {
                quotaUpdater.updateQuota(estimatedSize * 2);
            }

, который никогда не вызывается. Кто-нибудь знает почему?

Спасибо

7
задан Flo 2 January 2012 в 12:59
поделиться