HarmonyOS AppStorage是否可以完全替代preferences的场景
AppStorage和preferences都可以在逻辑层使用,区别是AppStorage还可以绑定UI状态,那么如果不考虑UI的情况下,且存储的数据都很轻量,AppStorage是否可以替代所有preferences的应用场景?既然有AppStorage了,为什么还会有preferences
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
AppStorage是否支持线程间共享对象,如果不支持,推荐替代方案是什么
1706浏览 • 1回复 待解决
HarmonyOS toggle组件是否支持完全受控
284浏览 • 0回复 待解决
HarmonyOS 是否有类似SpannableString的替代方案
803浏览 • 1回复 待解决
HarmonyOS是否支持webrtc?是否有替代方案?
4274浏览 • 2回复 待解决
HarmonyOS scheme是否有替代方案
261浏览 • 1回复 待解决
HarmonyOS map类型提供了collections.Map,那collections.Map能够完全替代map吗?
237浏览 • 1回复 待解决
computeScroll() 方法鸿蒙有什么可以替代
5554浏览 • 1回复 待解决
AppStorage是否将对象共享到其他线程?
358浏览 • 1回复 待解决
ImageReader 在HarmonyOS的替代方案
1476浏览 • 1回复 待解决
HarmonyOS对于有很多长链接的场景,是否可以使用Socket,稳定性及性能是否有保障
310浏览 • 1回复 待解决
HarmonyOS 使用preferences存储的限制
246浏览 • 1回复 待解决
图像处理库是否有替代的解决方案
247浏览 • 0回复 待解决
HarmonyOS AppStorage不可调用
261浏览 • 1回复 待解决
HarmonyOS @ohos.data.preferences
348浏览 • 1回复 待解决
okhttp3的能力可以用哪个HarmonyOS三方库替代
278浏览 • 1回复 待解决
HarmonyOS ArkTS中对于reflect-metadata是否有替代品
481浏览 • 1回复 待解决
HarmonyOS ArkTS中string类型没有replaceAll方法,是否有可替代的实现方式
478浏览 • 1回复 待解决
HarmonyOS UI内部使用AppStorage问题
151浏览 • 1回复 待解决
HarmonyOS preferences.putSync 存储报错
207浏览 • 1回复 待解决
Preferences、PersistentStorage的区别
400浏览 • 0回复 待解决
AppStorage 作用范围是怎样的
2137浏览 • 1回复 待解决
PersistentStorage与Preferences的异同
333浏览 • 1回复 待解决
SpannableString有替代的吗?
5867浏览 • 1回复 待解决
@Override public void computeScroll() 方法鸿蒙有什么可以替代?
5267浏览 • 1回复 待解决
HarmonyOS @LocalStorage 页面存储与@AppStorage 全局存储的区别
418浏览 • 1回复 待解决
AppStorage不可以完全替代preferences。
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一般为应用保存用户的个性化设置(字体大小,是否开启夜间模式)等。