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