Cordova 存储2024 年 8 月 29 日 | 阅读 6 分钟 在设计任何应用程序时,都会生成大量数据。 应用程序的未来使用需要这些数据。 因此,我们需要一个特定的存储区域来安全地保存这些有用的数据。 Cordova 提供了多个存储 API 来存储数据。 为了增加应用程序的使用,当用户离线时使用应用程序对用户是有益的。 这种存储 API 还可以提高应用程序的性能。 在这里,我们定义了各种存储 API,其中包括一些优点和缺点。 您可以根据您的需求使用任何 API。 此外,对于不同的目的,我们还可以在单个应用程序中使用几种不同的方法。 首先,我们将讨论本地存储 本地存储几乎所有的移动应用程序都需要将数据存储在本地存储中,因为您希望将数据存储在可以轻松检索它们的地方。 因此,本地存储是存储有用数据的更好地方。 HTML5 引入了新的选项来本地存储数据。 我们可以将 HTML5 存储与插件提供的各种机制结合使用。 它提供简单的、同步的键/值对存储。 本地存储由 WebView 实现支持,适用于 Cordova 的所有平台。 使用本地存储的原因在这里,我们定义了将数据存储在本地存储中的一些原因
我们可以将本地存储定义为最基本的存储选项,它可以在用户的浏览器中存储多达 5MB 的用户数据。 本地存储通常被认为是一种不可靠的存储,因为它受到一些负面评价。 我们可以使用浏览器的本地存储,因为它相当稳定可靠,并且可以成为存储的可行选择。 但是,它不适用于许多应用程序。 原因在于数据可能会被清除。 一般来说,只有在数据丢失不是什么大问题时才应该使用本地存储。 建议不要存储敏感数据,因为它可以很容易地被访问。 本地存储可能是“记住我”类型功能的合适选项。 因为如果数据丢失,什么都不会发生,我们只需要再次输入用户名和密码。 要从服务器缓存数据,我们可以使用本地存储,因为如果数据丢失,可以从服务器再次获取它。 看看下面的代码 上面的代码负责设置和检索本地存储数据。 应该注意的是,少数框架包含用于检索本地存储的内置方式。 注意:本地存储只能存储字符串。 我们需要将数据转换为 JSON 字符串,同时将对象或数组存储在本地存储中。 检索数据后,我们可以将 JSON 字符串解码回数组或对象。用法总结我们可以使用 window.localStorage 访问本地存储。 以下代码显示了由返回的 Storage 对象公开的最重要的方法 优点
缺点
WebSQL我们可以使用 Web SQL API 通过 SQL 数据库存储和查询数据。 它可以存储 50-200 MB 的数据。 但是,确切的限制取决于平台。 如果存储限制已达到,则 WebView 将获得用户的权限以根据需要使用更多本地空间。 您应该知道并非所有平台都支持此 API,但如果您想使用它,您应该使用 WebSQl Cordova 插件。 它在以下 Cordova 平台的底层 WebView 上受支持 AndroidiOS用法总结我们需要使用 window.openDatabase() 方法来创建或打开数据库 参数name (string): 指的是数据库的唯一名称,该名称将存储在磁盘中。 version (string): 定义数据库的版本。 displayName (string): 它提供了数据库的用户友好名称。 当您需要向用户描述您的数据库时,将使用此名称。 estimatedSize (number): 它指的是一个字节值,显示数据库的预期最大大小。 当数据库大小增加时,我们需要获得许可。 IndexedDBIndexedDB 结合了 WebSQL API LocalStorage 的优势。 它允许您存储任意 JavaScript 对象,并使用键对其进行索引。 它还为用户提供了一些 SQL 表的优势,而无需限制结构或需要提前定义它。 我们可以将 IndexedDB 定义为类似于 LocalStorage 的简单数据模型。 但是我们可以创建多个数据库而不是 LocalStorage,在其中可以根据数据库提供多个存储。 由于其搜索索引及其异步 API,它提供了更好的性能。 简而言之,IndexedDB
用法总结
生成任何请求时,您将获得一个请求对象。 此对象提供两个事件,即 onerror 和 onsuccess 事件,以及各种属性,例如 readyState、result 和 error。 基于插件的选项FileSystem API如果我们谈论 FileSystem API,它是一个从 Chrome 浏览器实现的 W3C 规范。 此 API 负责在本地文件系统上存储和检索数据。 File 插件在所有 Cordova 平台上提供广泛的实现。 SQLite 插件现在,第二个插件选项是 SQLite 插件,其包含的 API 几乎与 WebSQL 相同。 它们之间的差异如下
提供以下变体 cordova-sqlite-storage - 它为 Android、iOS 和 Windows 平台提供支持。 定义包含 sqlite3 实现的核心版本。 cordova-sqlite-ext - 这是一个扩展版本,包含一些附加功能,例如适用于 iOS 和 Android 的 REGEXP 支持。 cordova-sqlite-evfree - 与 cordova-sqlite-ext 相同,具有改进的内存处理。 它在商业许可证 GPL v3 下可用。 下一个主题Cordova 插件媒体 |
我们请求您订阅我们的新闻通讯以获取最新更新。