接入鸿蒙几天以来,发现各种和Android不一样的地方,今天来看一下Preferences存储
在Android中比如有ShardPreferences、Mmkv这些持久化存储方式,开发起来很方便,读取速度也很快,在鸿蒙里面也提供了对应的持久化存储方案,下面来探索一下
需要导入的包
import data_preferences from '@ohos.data.preferences';
import common from '@ohos.app.ability.common';
声明一个用来操作的preferences对象
const context = getContext(this) as common.UIAbilityContext;
export let promise = data_preferences.getPreferences(context, 'teacher');
数据存储Put
promise.then((res) => {
console.log("-------" + name + "-------" + valuer)
res.put(name, valuer)
res.flush() //一定要flush
})
数据Get
promise.then((res) => {
res.get(name, "")
.then((data: data_preferences.ValueType) => {
console.log("-------" + data.toString())
})
})
代码呢,是不多,但是鸿蒙的这个存取都是异步操作,导致很多时候不能直接同步获取,至于取一条数据的时间消耗,可以看一下下图:
差不多150毫秒的样子,操作频繁的地方,还是非常鸡肋的,后续看看鸿蒙会不会优化,同时可同步获取吧,就目前而言,开发起来没有生态,还是很吃力的!