接入鸿蒙几天以来,发现各种和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毫秒的样子,操作频繁的地方,还是非常鸡肋的,后续看看鸿蒙会不会优化,同时可同步获取吧,就目前而言,开发起来没有生态,还是很吃力的!