当我的应用程序将数据本地存储在手机上时,这种存储有多持久?我将详细说明确切的情况:
我正在用jQueryMobile和Phonegap构建一个应用程序。它本质上是一个浏览器应用程序,但使用Phonegap可以让我将其打包并在应用程序商店中出售,以及其他优点。
Phonegap提供了两种存储方式,这两种功能都协调了iOs、安卓、黑莓和其他一些操作系统的原生功能: localStorage (它是原始的键值对)和一个Web数据库。localStorage和web都是属于浏览器的存储形式。话虽如此,但我不知道数据会保存多久,在什么情况下会被删除,在什么情况下可能不可用,等等。
例如,如果应用程序使用localStorage或web SQL存储数据,而用户在他们的安卓系统上切换到不同的标准浏览器,应用程序是否会使用新的浏览器打开,这是否意味着存储的数据不可用?
如果用户一年没有使用应用程序(在我的情况下,这是一个现实的情况,但不一定是一个糟糕的情况),数据是否会像cookie一样过期,或者可能被来自其他应用程序的大量数据从浏览器的存储空间中推送出去?
或者会更早地销毁数据,例如:-用户访问浏览器中的另一个站点-浏览器被手动关闭-浏览器进程被终止或死亡-等等
或者,localStorage和web是不是只有在你进入设置>应用程序并主动删除与应用程序相关的用户数据时才会删除?
感谢你的见解。在旧的WWW上没有任何有价值的信息。
在应用程序更新的情况下会发生什么。本地和web存储将被删除还是会保留?
发布于 2016-04-20 16:07:02
试试NativeStorage插件。https://www.npmjs.com/package/cordova-plugin-nativestorage。
它具有设置、放置和获取功能,这些功能实现了平台功能,如安卓共享首选项和iOS NSUserDefaults,后者使数据存储尽可能安全。
cordova plugin add cordova-plugin-nativestorage
NativeStorage.putObject("reference_to_value",<object>, <success-callback>, <error-callback>);
NativeStorage.getObject("reference_to_value",<success-callback>, <error-callback>);
发布于 2012-12-13 12:49:09
我不能代表其他平台发言,但在我的4.1android设备上,我正在使用localStorage通过jQuery手机在本地存储一些数据,我发现安卓每周都会在我不知情的情况下清除我的缓存。我将尝试一下Web SQL,看看这样做是否更好。
https://stackoverflow.com/questions/7750857
复制相似问题