HarmonyOS 鸿蒙Next:@ohos.data.preferences与PersistentStorage对比?
2 回复
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一般为应用保存用户的个性化设置(字体大小,是否开启夜间模式)等
2.PersistentStorage的持久化变量最好是小于2kb的数据;Preferences存储的数据不超过一万条,Key键为string类型,要求非空且长度不超过80个字节,如果Value值为string类型,长度不超过8192个字节。
3.PersistentStorage只能在UI页面内使用。
4.PersistentStorage不要大量的数据持久化,因为PersistentStorage写入磁盘的操作是同步的,大量的数据本地化读写会同步在UI线程中执行,影响UI渲染性能。如果开发者需要存储大量的数据,建议使用数据库api。
5.PersistentStorage存储AppStorage属性UI状态,以确保这些属性在应用程序重新启动时的值与应用程序关闭时的值相同;Preferences一般为应用保存用户的个性化设置(字体大小,是否开启夜间模式)等
@ohos.data.preferences(首选项)与PersistentStorage(长连接存储)在HarmonyOS鸿蒙Next中的对比主要体现在以下几个方面:
- 数据存储方式:首选项以键值对形式存储,支持数字、字符、布尔等类型,适合轻量级数据持久化;PersistentStorage则提供持久性数据存储,确保数据在设备重启后依然保持不变。
- 数据访问速度:首选项数据全量加载进内存,因此访问速度快,但不适合存储过多数据;PersistentStorage数据存储在磁盘上,访问速度相对较慢,且大量数据持久化会影响UI渲染性能。
- 使用场景:首选项通常用于保存用户个性化设置等小型配置项;PersistentStorage则适用于需要持久化存储的数据,如UI状态等,但持久化变量最好小于2kb。
- 使用限制:PersistentStorage只能在UI页面内使用,且不支持嵌套对象持久化。
综上所述,两者各有优势,开发者应根据具体需求选择合适的数据存储方式。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。