Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
74347552
D
Docs
项目概览
OpenHarmony
/
Docs
大约 2 年 前同步成功
通知
161
Star
293
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
74347552
编写于
8月 08, 2022
作者:
葛
葛亚芳
提交者:
Gitee
8月 08, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update zh-cn/application-dev/database/database-preference-guidelines.md.
Signed-off-by:
N
@ge-yafang
<
geyafang@huawei.com
>
上级
bfb6c0cb
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
33 addition
and
29 deletion
+33
-29
zh-cn/application-dev/database/database-preference-guidelines.md
...pplication-dev/database/database-preference-guidelines.md
+33
-29
未找到文件。
zh-cn/application-dev/database/database-preference-guidelines.md
浏览文件 @
74347552
...
@@ -6,11 +6,17 @@
...
@@ -6,11 +6,17 @@
## 场景介绍
## 场景介绍
首选项功能通常用于保存应用的一些常用配置信息,并不适合需要存储大量数据和频繁改变数据的场景。应用的数据保存在文件中,这些文件可以持久化地存储在设备上。需要注意的是,应用访问的实例包含文件所有数据,这些数据会一直加载在设备的内存中,直到应用主动从内存中将其移除前,应用都可以通过Preferences API进行相关数据操作。
首选项功能通常用于保存应用的一些常用配置信息,并不适合需要存储大量数据和频繁改变数据的场景。应用的数据保存在文件中,这些文件可以持久化地存储在设备上。
需要注意的是,应用访问的实例包含文件所有数据,这些数据会一直加载在设备的内存中,直到应用主动从内存中将其移除前,应用都可以通过Preferences API进行相关数据操作。
## 接口说明
## 接口说明
首选项为应用提供key-value键值型的文件数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。数据存储形式为键值对,键的类型为字符串型,值的存储数据类型包括数字型、字符型、布尔型。更多首选项相关接口,请见
[
首选项API
](
../reference/apis/js-apis-data-preferences.md
)
。
首选项为应用提供Key-Value键值型的文件数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。
数据存储形式为键值对,键的类型为字符串型,值的存储数据类型包括数字型、字符型、布尔型以及这3种类型的数组类型。
更多首选项相关接口,请见
[
首选项API
](
../reference/apis/js-apis-data-preferences.md
)
。
### 创建存储实例
### 创建存储实例
...
@@ -18,29 +24,26 @@
...
@@ -18,29 +24,26 @@
**表1**
首选项实例创建接口
**表1**
首选项实例创建接口
| 包名
| 接口名 | 描述
|
| 包名
| 接口名 | 描述
|
| -----------------
| ------------------------------------------- |
------------------------------------------- |
| -----------------
---- | ------------------------------------------------------------ | -----------------
------------------------------------------- |
| ohos.data.preferences | getPreferences(context: Context, name: string): Promise
\<
Preferences> | 读取指定首选项持久化文件,将数据加载到Preferences实例,用于数据操作。 |
| ohos.data.preferences | getPreferences(context: Context, name: string): Promise
\<
Preferences> | 读取指定首选项持久化文件,将数据加载到Preferences实例,用于数据操作。 |
### 存
入
数据
### 存
取
数据
通过put系列方法,可以增加或修改Preferences实例中的数据。
通过put系列方法,可以增加或修改Preferences实例中的数据。
**表2**
首选项存入接口
| 类名 | 接口名 | 描述 |
| ------- | -------------------------------------------------- | ----------------------------------------------- |
| Preferences | put(key: string, value: ValueType): Promise
\<
void> | 支持值为number、string、boolean、Array
\<
number>、Array
\<
string>、Array
\<
boolean>类型的数据存入。 |
### 读取数据
通过调用get系列方法,可以读取Preferences中的数据。
通过调用get系列方法,可以读取Preferences中的数据。
**表3**
首选项读取接口
通过调用getAll系列方法,可以获取Preferences中包含所有键值的Object对象。
**表2**
首选项存取接口
| 类名 | 接口名 | 描述 |
| 类名 | 接口名 | 描述 |
| ------- | ---------------------------------------------------------- | ----------------------------------------------- |
| ----------- | ---------------------------------------------------------- | ------------------------------------------------------------ |
| Preferences | put(key: string, value: ValueType): Promise
\<
void> | 支持存入值为number、string、boolean、Array
\<
number>、Array
\<
string>、Array
\<
boolean>类型的数据。 |
| Preferences | get(key: string, defValue: ValueType): Promise
\<
ValueType> | 支持获取值为number、string、boolean、Array
\<
number>、Array
\<
string>、Array
\<
boolean>类型的数据。 |
| Preferences | get(key: string, defValue: ValueType): Promise
\<
ValueType> | 支持获取值为number、string、boolean、Array
\<
number>、Array
\<
string>、Array
\<
boolean>类型的数据。 |
| Preferences | getAll(): Promise
<Object>
| 支持获取含有所有键值的Object对象。 |
### 数据持久化
### 数据持久化
...
@@ -48,18 +51,18 @@
...
@@ -48,18 +51,18 @@
**表4**
首选项持久化接口
**表4**
首选项持久化接口
| 类名
| 接口名 | 描述
|
| 类名
| 接口名 | 描述
|
| -------
| ----------------------- |
--------------------------------------- |
| -------
---- | ----------------------- | ----
--------------------------------------- |
| Preferences | flush(): Promise
\<
void> | 将Preferences实例通过异步线程回写入文件中。 |
| Preferences | flush(): Promise
\<
void> | 将Preferences实例通过异步线程回写入文件中。 |
### 订阅数据变化
### 订阅数据变化
订阅数据变更者类,订阅的
key的值发生变更后,在执行flush方法后,会执行
callback回调。
订阅数据变更者类,订阅的
Key的值发生变更后,在执行flush方法后,会触发
callback回调。
**表5**
首选项变化订阅接口
**表5**
首选项变化订阅接口
| 类名 | 接口名 | 描述 |
| 类名
| 接口名 | 描述 |
| ------- | ------------------------------------------------------------ | -------------- |
| -------
----
| ------------------------------------------------------------ | -------------- |
| Preferences | on(type: 'change', callback: Callback
<
{
key
:
string
}
>
): void | 订阅数据变化。 |
| Preferences | on(type: 'change', callback: Callback
<
{
key
:
string
}
>
): void | 订阅数据变化。 |
| Preferences | off(type: 'change', callback: Callback
<
{
key
:
string
}
>
): void | 注销订阅。 |
| Preferences | off(type: 'change', callback: Callback
<
{
key
:
string
}
>
): void | 注销订阅。 |
...
@@ -69,10 +72,10 @@
...
@@ -69,10 +72,10 @@
**表6**
首选项删除接口
**表6**
首选项删除接口
| 包名
| 接口名
| 描述 |
| 包名
| 接口名
| 描述 |
| -----------------
|
---------------------------------------------------- | ------------------------------------------------------------ |
| -----------------
---- | --------
---------------------------------------------------- | ------------------------------------------------------------ |
| ohos.data.preferences | deletePreferences(context: Context, name: string): Promise
\<
void>
;
| 从缓存中移除已加载的Preferences对象,同时从设备上删除对应的文件。 |
| ohos.data.preferences | deletePreferences(context: Context, name: string): Promise
\<
void> | 从缓存中移除已加载的Preferences对象,同时从设备上删除对应的文件。 |
| ohos.data.preferences | removePreferencesFromCache(context: Context, name: string): Promise
\<
void>
; | 仅从缓存中移除已加载的Preferences对象,主要用于释放内存。
| ohos.data.preferences | removePreferencesFromCache(context: Context, name: string): Promise
\<
void>
| 仅从缓存中移除已加载的Preferences对象,主要用于释放内存。 |
## 开发步骤
## 开发步骤
...
@@ -91,7 +94,7 @@
...
@@ -91,7 +94,7 @@
3.
存入数据。
3.
存入数据。
使用
Preferences
put方法保存数据到缓存的实例中。
使用put方法保存数据到缓存的实例中。
```
js
```
js
promise
.
then
((
preferences
)
=>
{
promise
.
then
((
preferences
)
=>
{
...
@@ -108,7 +111,7 @@
...
@@ -108,7 +111,7 @@
4.
读取数据。
4.
读取数据。
使用
Preferences
get方法读取数据。
使用get方法读取数据。
```
js
```
js
promise
.
then
((
preferences
)
=>
{
promise
.
then
((
preferences
)
=>
{
...
@@ -132,7 +135,7 @@
...
@@ -132,7 +135,7 @@
6.
订阅数据变化。
6.
订阅数据变化。
应用订阅数据变化需要指定observer作为回调方法。订阅的
k
ey的值发生变更后,当执行flush方法时,observer被触发回调。
应用订阅数据变化需要指定observer作为回调方法。订阅的
K
ey的值发生变更后,当执行flush方法时,observer被触发回调。
```
js
```
js
var
observer
=
function
(
key
)
{
var
observer
=
function
(
key
)
{
...
@@ -169,4 +172,5 @@
...
@@ -169,4 +172,5 @@
```
```
## 相关实例
## 相关实例
针对首选项开发,有以下相关实例可供参考:
针对首选项开发,有以下相关实例可供参考:
-
[
`Preferences`:首选项(eTS)(API9)
](
https://gitee.com/openharmony/app_samples/tree/master/data/Preferences
)
-
[
`Preferences`:首选项(eTS)(API9)
](
https://gitee.com/openharmony/app_samples/tree/master/data/Preferences
)
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录