我正在使用 Sencha Touch 开发一个移动应用程序。我的应用程序需要在设备本身中存储一些数据(来自数据库,采用 JSON 格式),以便应用程序在关闭并重新运行时保留其先前的状态。
HTML 5 localstorage 是最好的解决方案吗?
它的局限性/缺点是什么?
如果我删除浏览器 cookie,我是否也会丢失本地保存的数据?
除了保存在网络浏览器的缓存中,我还有什么选择?
我正在使用 Sencha Touch 开发一个移动应用程序。我的应用程序需要在设备本身中存储一些数据(来自数据库,采用 JSON 格式),以便应用程序在关闭并重新运行时保留其先前的状态。
HTML 5 localstorage 是最好的解决方案吗?
它的局限性/缺点是什么?
如果我删除浏览器 cookie,我是否也会丢失本地保存的数据?
除了保存在网络浏览器的缓存中,我还有什么选择?
LocalStorage 和 IndexedDB 是一个可行的解决方案。更多浏览器支持 LocalStorage,但仅支持存储名称/值对中的字符串。以下是支持表:
另一种选择是 SequelSphere,这是一个 HTML5 关系数据库引擎,它使用 LocalStorage 和 IndexedDB 来存储其数据。它还有一个 Ext JS 4(Sencha 的老大哥)的扩展,还有一个正在开发中的 Sencha 扩展。即使没有扩展,它也可以将您的数据存储在本地,提供 SQL 访问,并将数据放入表单中,以便 Sencha 使用。作为免责声明:我为 SequelSphere 工作。这就是我知道 Sencha 扩展正在开发中的方式。
在可靠性方面,所有形式的客户端数据存储都依赖于最终用户不从浏览器中清除数据。请注意:这通常与清除浏览器的 cookie 不同。