一、用户首选项的使用场景
用户首选项(Preferences)为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改混合查询。当用户有轻量级的键值型数据需要存储时,可以采用Preferences来进行存储。一般适用于保存用户的个性化设置,例如应用的字体大小的设置、应用的模式切换(白天模式和夜间模式)、用户是否处于登录状态、首次进入页面时加载的页面。
二、用户首选项的实现机制
用户程序通过ArkTS接口调用用户首选项读写对应的数据文件。开发者可以将用户首选项持久化文件的内容加载到Preferences实例,每个文件唯一对应到一个Preferences实例,系统会通过静态容器将该实例存储在内存中,直到从内存中主动移除该实例或删除该文件。
三、用户首选项的存储模式
用户首选项的默认存储模式为使用XML格式存储,但是从API version 18开始,可选择GSKV存储模式。XML存储模式主要针对于对单进程、小数据量场景;GSKV存储模式主要针对多线程并发场景。
四、用户首选项使用案例
构建PreferencesUtils工具类,用于封装用户首选项Preferencet提供的接口,方便后续的写入数据、保存数据、修改数据和删除数据。
在类中添加方法,用于获取实例对象

构建方法,用于添加数据

构建方法,用于读取数据

1、保存应用的显示模式
创建变量:用于配置个性化信息

在加载页面时,通过组件生命周期aboutToAppear(),读取数据,获取用户的个性化配置信息

UI视图构建:

效果截图:

2、保存用户的登录状态
UI视图构建:

在应用加载页面时,会先读取磁盘中是否存在用户的账号和密码字段,如果存在,则说明为登录状态,无需再次登录,直接加载应用的而首页即可;若不存在,则说明为未登录状态,那么就先加载登录界面,登录成功后会跳转至应用的首页。
在EntryAbility文件中的onWindowStageCreate()方法中,创建变量loadPage,用于存储即将加载的页面的信息:

登录界面视图:

624

被折叠的 条评论
为什么被折叠?



