删除localstorage但仍然存在

时间:2013-02-01 19:50:28

标签: android android-webview local-storage

我试图在用户注销时清除我的应用程序中webview使用的本地存储。我手动删除保存localstorage的文件夹,并能够验证用户注销时是否删除了该文件夹。但是,当他们重新登录时,即使没有localstorage文件,webview仍然可以访问localstorage。如果我在注销后手动终止进程,它按预期工作,但我需要这种行为而不会终止应用程序。

是否可以清除应用程序使用的RAM,这是vebview的已知错误,还是有其他方法可以解决此问题?

我尝试删除webview和webviewCache数据库,删除所有缓存文件夹,删除应用程序使用的文件但localstorage仍然存在,因为注销时应用程序未重置。

2 个答案:

答案 0 :(得分:11)

我终于找到了我要找的东西!

由于我们在应用程序中有一种内置浏览器,因此可以加载许多网页并将其保存到localStorage。调用localStorage.clear()loadUrl("javascript:localStorage.clear()")未正确清除所有网页的所有缓存等。

最终有效的行为是使用下面链接的WebStorage.deleteAllData()。我也在删除这些文件(因为默认情况下它会在app_webview中保存,因为在你提供路径之前)

http://developer.android.com/reference/android/webkit/WebStorage.html#deleteAllData()

答案 1 :(得分:1)

尝试在JavaScript中调用localStorage.clear()来清除localStorage,而不是通过删除它管理的文件来催促WebView