鸿蒙学习-preferences封装

学习记录一下,封装preferences

preferences:用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。

数据存储形式为键值对,键的类型为字符串型,值的存储数据类型包括数字型、字符型、布尔型以及这3种类型的数组类型。

preferences有同步和异步操作两种方式,这里只封装了同步方法,大家可以参考使用

复制代码
import preferences from '@ohos.data.preferences';
class SpUtil {
  sp: preferences.Preferences
  constructor() {
    let options: preferences.Options = { name: '自定义' };
    this.sp = preferences.getPreferencesSync(getContext(this), options)
  }

  put(key: string, value: preferences.ValueType) {
    this.sp.putSync(key, value)
    this.sp.flush()
  }

  get(key: string, defValue: preferences.ValueType) {
    return this.sp.getSync(key, defValue)
  }

  clearAll() {
    this.sp.clearSync()
    this.sp.flush()
  }
}

export default new SpUtil()

文件存储路径:/data/app/el2/100/base/包名/haps/entry/preferences/文件名

使用:

复制代码
let isFirst = SpUtil.get("isFirst", true) as boolean
相关推荐
不羁的木木2 小时前
【开源鸿蒙跨平台开发学习笔记】Day01:React Native 开发 HarmonyOS-环境搭建篇
学习·开源·harmonyos
lqj_本人2 小时前
鸿蒙与Qt的双线程模型:主线程与UI线程的博弈
qt·ui·harmonyos
御承扬3 小时前
鸿蒙原生系列之拖拽事件
华为·harmonyos·拖拽事件·ndk ui
不爱吃糖的程序媛3 小时前
开源鸿蒙 Cordova 设备信息插件开发详解
华为·开源·harmonyos
波儿菜8 小时前
鸿蒙ets实现强制蜂窝网络
harmonyos
江澎涌9 小时前
JHandler——一套简单易用的 C++ 事件循环机制
android·c++·harmonyos
爱笑的眼睛1110 小时前
HarmonyOS运动健康应用开发:构建智能计步器的深度实践
华为·harmonyos
std787910 小时前
华为擎云将发布新一代鸿蒙电脑及鸿蒙电脑企业版 专为企业而生
华为·电脑·harmonyos
lqj_本人11 小时前
鸿蒙原生与Qt混合开发:UI集成与事件处理
qt·ui·harmonyos
胡琦博客11 小时前
21天开源鸿蒙训练营|Day1 拒绝环境配置焦虑:AI 辅助下的 OpenHarmony 跨平台环境搭建全实录
人工智能·开源·harmonyos