数据存储
首选项数据存储
用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。当用户希望有一个全局唯一存储的地方,可以采用用户首选项来进行存储。Preferences会将该数据缓存在内存中,当用户读取的时候,能够快速从内存中获取数据,当需要持久化时可以使用flush接口将内存中的数据写入持久化文件中。Preferences会随着存放的数据量越多而导致应用占用的内存越大,因此,Preferences不适合存放过多的数据,也不支持通过配置加密,适用的场景一般为应用保存用户的个性化设置(字体大小,是否开启夜间模式)等。
数据最终存储在系统文件中,提供对底层文件的封装,将其映射成Preferences实例对象

可使用回调方式与Promise方式获取Preferences实例
导入模块:
import {
preferences } from '@kit.ArkData';
let preference: Promise<preferences.Preferences> =
preferences.getPreferences(context, PREFERENCES_NAME)
以下提供一种基于Promise的存储实例
1.声明全局对象,提供Map集合存放获取Preferences实例的函数与存入的键值对数据:
export class GlobalContext{
private constructor() {
}
private static instance:GlobalContext
private tool_map= new Map<string,Object>()
public static getContext(){
if(!GlobalContext.instance){
GlobalContext.instance=new GlobalContext()
}
return GlobalContext.instance
}
getValue(value:string){
return this.tool_map.get

最低0.47元/天 解锁文章
2255





