HarmonyOS 鸿蒙Next:Preferences、AppStorage与PersistentStorage的区别及与Environment的关系

HarmonyOS 鸿蒙Next:Preferences、AppStorage与PersistentStorage的区别及与Environment的关系

AppStorage是个单例,是由UI框架在应用程序启动时创建,为应用程序UI状态属性提供中央存储,关闭应用的时候会清空。通常和PersistentStorage配合使用,通过PersistentStorage持久化到本地,以确保这些属性在应用程序重新启动时的值与应用程序关闭时的值相同。

1.PersistentStorage是同步写入磁盘;Preferences是全量加载进内存。

2.PersistentStorage的持久化变量最好是小于2kb的数据;Preferences存储的数据不超过一万条,Key键为string类型,要求非空且长度不超过80个字节,如果Value值为string类型,长度不超过8192个字节。

3.PersistentStorage只能在UI页面内使用。

4.PersistentStorage不要大量的数据持久化,因为PersistentStorage写入磁盘的操作是同步的,大量的数据本地化读写会同步在UI线程中执行,影响UI渲染性能。如果需要存储大量的数据,建议使用数据库api。

5.PersistentStorage存储AppStorage属性UI状态,以确保这些属性在应用程序重新启动时的值与应用程序关闭时的值相同;Preferences一般为应用保存用户的个性化设置(字体大小,是否开启夜间模式)等。


更多关于HarmonyOS 鸿蒙Next:Preferences、AppStorage与PersistentStorage的区别及与Environment的关系的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

localstorage、appstorage、PersistentStorage、Environment对比

https://developer.huawei.com/consumer/cn/forum/topic/0208152891758658715?fid=0109140870620153026

更多关于HarmonyOS 鸿蒙Next:Preferences、AppStorage与PersistentStorage的区别及与Environment的关系的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next中,Preferences、AppStorage与PersistentStorage在数据存储与访问方面各有特色,并与Environment存在不同的关联。

Preferences主要用于存储轻量级、简单的键值对数据,适用于用户偏好设置等场景。它通常具有较快的读写速度,但存储容量有限。Preferences数据一般与应用环境紧密相关,随着应用的卸载而清除。

AppStorage则用于存储应用内的结构化数据,如用户数据、配置信息等。相比Preferences,AppStorage提供了更为丰富和灵活的数据存储方式,如文件、数据库等。它同样与应用环境绑定,但可能在应用卸载时保留部分数据,具体取决于存储策略和用户选择。

PersistentStorage则是一种更为持久的数据存储方式,用于存储需要在应用多次启动间保持的数据。它通常不依赖于应用环境,即使应用被卸载,数据也可能继续保留在设备上。PersistentStorage适用于需要长期保存的数据,如用户文档、应用缓存等。

Environment在HarmonyOS中扮演着提供运行时环境、管理应用生命周期和资源等重要角色。它与上述存储方式的关系主要体现在数据存储的持久性和访问权限上。Environment可能影响存储方式的选择和数据访问的策略。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部