鸿蒙开发中:首选项(Preferences)和长连接(PersistentStorage)的区别

Preferences:可看做是配置项,为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。Preferences中的数据会被缓存在内存中,因此它可以获得更快的存取速度

PersistentStorage:提供持久性的数据存储,数据在设备上保持不变,即使应用关闭或设备重启。PersistentStorage将选定的AppStorage属性保留在设备磁盘上。PersistentStorage的持久化变量最好是小于2kb的数据,不要大量的数据持久化,因为PersistentStorage写入磁盘的操作是同步的,大量的数据本地化读写会同步在UI线程中执行,影响UI渲染性能。

在鸿蒙开发中,首选项(Preferences)和长连接(PersistentStorage)都是用于存储数据的方式,它们的详细区别和作用如下:

  • Preferences:通常用于保存应用的配置信息。数据通过文本的形式保存在设备中,应用使用过程中会将文本中的数据全量加载到内存中,所以访问速度快、效率高,但不适合需要存储大量数据的场景。Preferences会随着存放的数据量越多而导致应用占用的内存越大,因此,Preferences不适合存放过多的数据,适用的场景一般为应用保存用户的个性化设置(字体大小,是否开启夜间模式)等。

  • -PersistentStorage:提供持久性的数据存储,数据在设备上保持不变,即使应用关闭或设备重启。PersistentStorage将选定的AppStorage属性保留在设备磁盘上。PersistentStorage的持久化变量最好是小于2kb的数据,不要大量的数据持久化,因为PersistentStorage写入磁盘的操作是同步的,大量的数据本地化读写会同步在UI线程中执行,影响UI渲染性能。如果开发者需要存储大量的数据,建议使用数据库api。

总的来说,Preferences适用于存储小型配置项数据,而PersistentStorage适用于存储需要在应用关闭或设备重启后仍然保留的数据。

数据持久化方案

LocalStorage和AppStorage都是运行时的内存,如果应用退出再次启动后,依然能保存选定的结果

就需要用到PersistentStorage,此对象的作用是持久化存储选定的AppStorage属性

UI和业务逻辑不直接访问PersistentStorage中的属性,所有属性访问都是对AppStorage的访问,AppStorage中的更改会自动同步到PersistentStorage

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值