Javascript 在安卓系统中';s WebView,what';'DomStorage'、'Database'、'AppCache'之间有什么不同?

Javascript 在安卓系统中';s WebView,what';'DomStorage'、'Database'、'AppCache'之间有什么不同?,javascript,android,caching,local-storage,android-webview,Javascript,Android,Caching,Local Storage,Android Webview,在Android的WebView中,DomStorage、Database和AppCache之间有什么区别 我对这三种设置感到困惑。现在我需要一个WebView实例,可以在JavaScript中使用localStorage 以下是一个例子: if (localStorage['avatar_user_' + nick]) { obj.src = localStorage['avatar_user_' + nick]; } else { va

在Android的WebView中,
DomStorage
Database
AppCache
之间有什么区别

我对这三种设置感到困惑。现在我需要一个WebView实例,可以在JavaScript中使用
localStorage

以下是一个例子:

        if (localStorage['avatar_user_' + nick]) {
        obj.src = localStorage['avatar_user_' + nick];
    } else {
        var url = avatar_path + nick + '/avatar.jpg';
        new Oauth().img("jpeg", url,
            function(data) {
                if (data != '') {
                    obj.src = data;
                    localStorage['avatar_user_' + nick] = data;
                }
            }, function() {}
        );
    }
在上面的代码中,我确实从web上获得了图像,下次需要时,它将从localStorage加载,但该存储只会持续应用程序的生命周期

如果我重新启动我的应用程序,那么图像将再次从web加载

我按如下方式设置我的WebView:

    mWebSettings.setAppCacheEnabled(true);
    mWebSettings.setDomStorageEnabled(true);
    mWebSettings.setDatabaseEnabled(true);
    mWebSettings.setDatabasePath("file:///data/data/com.xxx/databases");
但是我可以在
file:///data/data/com.xxx/databases
在本地存储中添加内容时保持不变

所以我的问题是如何让我的网页存储数据,并在应用程序关闭后保存它们

如果我在一个应用程序中使用多个WebView并将
数据库路径指向同一文件夹,这是否重要


如果你能告诉我
DomStorage
Database
AppCache
之间的区别,那就更好了

问题解决了!我刚才犯了一个错误,我使用了
file:///data/data/com.xxx/databases
作为数据库路径,它应该是
/data/data/com.xxx/databases
而不是
文件://


仍然在等待关于
DomStorage
数据库
AppCache
,之间差异的答案,我不是百分之一百确定,但DomStorage似乎是WebStorage的同义词。这是一种将数据以键=值对的形式存储在客户端站点上的技术。

数据库表示将启用客户端SQL数据库。

AppCache是一种使整个网站可供脱机使用的技术。