提交 46dc8e2b 编写于 作者: L li_juntao

修改preferences描述及示例代码

Signed-off-by: Nli_juntao <lijuntao9@huawei.com>
上级 dca5036f
......@@ -26,7 +26,7 @@
| 类名 | 接口名 | 描述 |
| ------- | -------------------------------------------------- | ----------------------------------------------- |
| Preferences | put(key: string, value: ValueType): Promise\<void> | 支持值为number、string、boolean类型的数据存入,同时也支持Array<number>、Array<string>、Array<boolean>三种类型的数组的存入。 |
| Preferences | put(key: string, value: ValueType): Promise\<void> | 支持值为number、string、boolean、Array\<number>、Array\<string>、Array\<boolean>类型的数据存入。 |
### 读取数据
......@@ -36,7 +36,7 @@
| 类名 | 接口名 | 描述 |
| ------- | ---------------------------------------------------------- | ----------------------------------------------- |
| 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>类型的数据。 |
### 数据持久化
......@@ -67,7 +67,7 @@
| 包名 | 接口名 | 描述 |
| ----------------- | ---------------------------------------------------- | ------------------------------------------------------------ |
| 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对象,主要用于释放内存。
## 开发步骤
......@@ -75,14 +75,14 @@
1. 准备工作,导入@ohos.data.preferences以及相关的模块到开发环境。
```js
import preferences from '@ohos.data.preferences'
import data_preferences from '@ohos.data.preferences'
```
2. 获取Preferences实例。
读取指定文件,将数据加载到Preferences实例,用于数据操作。
```js
let promise = preferences.getPreferences(this.context, 'mystore')
let promise = data_preferences.getPreferences(this.context, 'mystore')
```
3. 存入数据。
......@@ -90,8 +90,8 @@
使用Preferences put方法保存数据到缓存的实例中。
```js
promise.then((pref) => {
let putPromise = pref.put('startup', 'auto')
promise.then((preferences) => {
let putPromise = preferences.put('startup', 'auto')
putPromise.then(() => {
console.info("Put the value of startup successfully.")
}).catch((err) => {
......@@ -107,8 +107,8 @@
使用Preferences get方法读取数据。
```js
promise.then((pref) => {
let getPromise = pref.get('startup', 'default')
promise.then((preferences) => {
let getPromise = preferences.get('startup', 'default')
getPromise.then((value) => {
console.info("The value of startup is " + value)
}).catch((err) => {
......@@ -123,7 +123,7 @@
应用存入数据到Preferences实例后,可以通过flush方法将Preferences实例回写到文件中。
```js
pref.flush();
preferences.flush();
```
6. 订阅数据变化。
......@@ -134,14 +134,14 @@
var observer = function (key) {
console.info("The key of " + key + " changed.")
}
pref.on('change', observer)
pref.put('startup', 'auto', function (err) {
preferences.on('change', observer)
preferences.put('startup', 'auto', function (err) {
if (err) {
console.info("Put the value of startup failed with err: " + err)
return
}
console.info("Put the value of startup successfully.")
pref.flush(function (err) {
preferences.flush(function (err) {
if (err) {
console.info("Flush to file failed with err: " + err)
return
......@@ -156,8 +156,8 @@
使用deletePreferences方法从内存中移除指定文件对应的Preferences单实例,并删除指定文件及其备份文件、损坏文件。删除指定文件时,应用不允许再使用该实例进行数据操作,否则会出现数据一致性问题。删除后,数据及文件将不可恢复。
```js
let deletePromise = preferences.deletePreferences(context, 'mystore')
deletePromise.then(() => {
let proDelete = data_preferences.deletePreferences(context, 'mystore')
proDelete.then(() => {
console.info("Deleted successfully.")
}).catch((err) => {
console.info("Deleted failed with err: " + err)
......
# 首选项
首选项为应用提供key-value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。数据存储形式为键值对,键的类型为字符串型,值的存储数据类型包括数字型、字符型、布尔型。
首选项为应用提供key-value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。数据存储形式为键值对,键的类型为字符串型,值的存储数据类型包括数字型、字符型、布尔型以及这3种类型的数组类型
> **说明:**
......@@ -10,7 +10,7 @@
## 导入模块
```ts
import preferences from '@ohos.data.preferences';
import data_preferences from '@ohos.data.preferences';
```
## 常量
......@@ -23,7 +23,7 @@ import preferences from '@ohos.data.preferences';
| MAX_VALUE_LENGTH | string | 是 | 否 | value的最大长度限制,需小于8192字节。 |
## preferences.getPreferences
## data_preferences.getPreferences
getPreferences(context: Context, name: string, callback: AsyncCallback&lt;Preferences&gt;): void
......@@ -41,7 +41,7 @@ getPreferences(context: Context, name: string, callback: AsyncCallback&lt;Prefer
**示例:**
```ts
preferences.getPreferences(this.context, 'mystore', function (err, pref) {
data_preferences.getPreferences(this.context, 'mystore', function (err, preferences) {
if (err) {
console.info("Get preferences failed.")
return;
......@@ -51,7 +51,7 @@ preferences.getPreferences(this.context, 'mystore', function (err, pref) {
```
## preferences.getPreferences
## data_preferences.getPreferences
getPreferences(context: Context, name: string): Promise&lt;Preferences&gt;
......@@ -72,8 +72,8 @@ getPreferences(context: Context, name: string): Promise&lt;Preferences&gt;
**示例:**
```ts
let promise = preferences.getPreferences(this.context, 'mystore')
promise.then((pref) => {
let promise = data_preferences.getPreferences(this.context, 'mystore')
promise.then((preferences) => {
console.info("Get preferences successfully.")
}).catch((err) => {
console.info("Get preferences failed.")
......@@ -81,7 +81,7 @@ promise.then((pref) => {
```
## preferences.deletePreferences
## data_preferences.deletePreferences
deletePreferences(context: Context, name: string, callback: AsyncCallback&lt;void&gt;): void
......@@ -99,7 +99,7 @@ deletePreferences(context: Context, name: string, callback: AsyncCallback&lt;voi
**示例:**
```ts
preferences.deletePreferences(this.context, 'mystore', function (err) {
data_preferences.deletePreferences(this.context, 'mystore', function (err) {
if (err) {
console.info("Deleted preferences failed, err: " + err)
return
......@@ -109,7 +109,7 @@ preferences.deletePreferences(this.context, 'mystore', function (err) {
```
## preferences.deletePreferences
## data_preferences.deletePreferences
deletePreferences(context: Context, name: string): Promise&lt;void&gt;
......@@ -131,7 +131,7 @@ deletePreferences(context: Context, name: string): Promise&lt;void&gt;
**示例:**
```ts
let promise = preferences.deletePreferences(this.context, 'mystore')
let promise = data_preferences.deletePreferences(this.context, 'mystore')
promise.then(() => {
console.info("Deleted preferences successfully.")
}).catch((err) => {
......@@ -140,7 +140,7 @@ promise.then(() => {
```
## preferences.removePreferencesFromCache
## data_preferences.removePreferencesFromCache
removePreferencesFromCache(context: Context, name: string, callback: AsyncCallback&lt;void&gt;): void
......@@ -159,7 +159,7 @@ removePreferencesFromCache(context: Context, name: string, callback: AsyncCallba
**示例:**
```ts
preferences.removePreferencesFromCache(this.context, 'mystore', function (err) {
data_preferences.removePreferencesFromCache(this.context, 'mystore', function (err) {
if (err) {
console.info("Removed preferences from cache failed, err: " + err)
return
......@@ -169,7 +169,7 @@ preferences.removePreferencesFromCache(this.context, 'mystore', function (err) {
```
## preferences.removePreferencesFromCache
## data_preferences.removePreferencesFromCache
removePreferencesFromCache(context: Context, name: string): Promise&lt;void&gt;
......@@ -192,7 +192,7 @@ removePreferencesFromCache(context: Context, name: string): Promise&lt;void&gt;
**示例:**
```ts
let promise = preferences.removePreferencesFromCache(this.context, 'mystore')
let promise = data_preferences.removePreferencesFromCache(this.context, 'mystore')
promise.then(() => {
console.info("Removed preferences from cache successfully.")
}).catch((err) => {
......@@ -223,7 +223,7 @@ get(key: string, defValue: ValueType, callback: AsyncCallback&lt;ValueType&gt;):
**示例:**
```ts
pref.get('startup', 'default', function(err, value) {
preferences.get('startup', 'default', function(err, value) {
if (err) {
console.info("Get value of startup failed, err: " + err)
return
......@@ -254,7 +254,7 @@ get(key: string, defValue: ValueType): Promise&lt;ValueType&gt;
**示例:**
```ts
let promise = pref.get('startup', 'default')
let promise = preferences.get('startup', 'default')
promise.then((value) => {
console.info("Get value of startup is " + value)
}).catch((err) => {
......@@ -277,7 +277,7 @@ getAll(callback: AsyncCallback&lt;Object&gt;): void;
**示例:**
```ts
pref.getAll(function (err, value) {
preferences.get.getAll(function (err, value) {
if (err) {
console.info("getAll failed, err: " + err)
return
......@@ -304,7 +304,7 @@ getAll(): Promise&lt;Object&gt;
**示例:**
```ts
let promise = pref.getAll()
let promise = preferences.getAll()
promise.then((value) => {
let keys = Object.keys(value)
console.info('getAll keys = ' + keys)
......@@ -331,7 +331,7 @@ put(key: string, value: ValueType, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```ts
pref.put('startup', 'auto', function (err) {
preferences.put('startup', 'auto', function (err) {
if (err) {
console.info("Put value of startup failed, err: " + err)
return
......@@ -362,7 +362,7 @@ put(key: string, value: ValueType): Promise&lt;void&gt;
**示例:**
```ts
let promise = pref.put('startup', 'auto')
let promise = preferences.put('startup', 'auto')
promise.then(() => {
console.info("Put value of startup successfully.")
}).catch((err) => {
......@@ -387,7 +387,7 @@ has(key: string, callback: AsyncCallback&lt;boolean&gt;): void
**示例:**
```ts
pref.has('startup', function (err, isExist) {
preferences.has('startup', function (err, isExist) {
if (err) {
console.info("Check the key of startup failed, err: " + err)
return
......@@ -421,7 +421,7 @@ has(key: string): Promise&lt;boolean&gt;
**示例:**
```ts
let promise = pref.has('startup')
let promise = preferences.has('startup')
promise.then((isExist) => {
if (isExist) {
console.info("The key of startup is contained.")
......@@ -450,7 +450,7 @@ delete(key: string, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```ts
pref.delete('startup', function (err) {
preferences.delete('startup', function (err) {
if (err) {
console.info("Delete startup key failed, err: " + err)
return
......@@ -480,7 +480,7 @@ delete(key: string): Promise&lt;void&gt;
**示例:**
```ts
let promise = pref.delete('startup')
let promise = preferences.delete('startup')
promise.then(() => {
console.info("Deleted startup key successfully.")
}).catch((err) => {
......@@ -504,7 +504,7 @@ flush(callback: AsyncCallback&lt;void&gt;): void
**示例:**
```ts
pref.flush(function (err) {
preferences.flush(function (err) {
if (err) {
console.info("Flush to file failed, err: " + err)
return
......@@ -529,7 +529,7 @@ flush(): Promise&lt;void&gt;
**示例:**
```ts
let promise = pref.flush()
let promise = preferences.flush()
promise.then(() => {
console.info("Flushed to file successfully.")
}).catch((err) => {
......@@ -553,7 +553,7 @@ clear(callback: AsyncCallback&lt;void&gt;): void
**示例:**
```ts
pref.clear(function (err) {
preferences.clear(function (err) {
if (err) {
console.info("Clear to file failed, err: " + err)
return
......@@ -578,7 +578,7 @@ clear(): Promise&lt;void&gt;
**示例:**
```ts
let promise = pref.clear()
let promise = preferences.clear()
promise.then(() => {
console.info("Cleared to file successfully.")
}).catch((err) => {
......@@ -607,15 +607,17 @@ var observer = function (key) {
console.info("The key of " + key + " changed.")
}
pref.on('change', observer)
pref.put('startup', 'auto', function (err) {
...
preferences.on('change', observer)
preferences.put('startup', 'auto', function (err) {
if (err) {
console.info("Put the value of startup failed, err: " + err)
return
}
console.info("Put the value of startup successfully.")
pref.flush(function (err) {
preferences.flush(function (err) {
if (err) {
console.info("Flush to file failed, err: " + err)
return
......@@ -646,21 +648,23 @@ var observer = function (key) {
console.info("The key of " + key + " changed.")
}
pref.on('change', observer)
pref.put('startup', 'auto', function (err) {
...
preferences.on('change', observer)
preferences.put('startup', 'auto', function (err) {
if (err) {
console.info("Put the value of startup failed, err: " + err)
return
}
console.info("Put the value of startup successfully.")
pref.flush(function (err) {
preferences.flush(function (err) {
if (err) {
console.info("Flush to file failed, err: " + err)
return
}
console.info("Flushed to file successfully.") // observer will be called.
pref.off('change', observer)
preferences.off('change', observer)
})
})
```
......@@ -671,11 +675,11 @@ pref.put('startup', 'auto', function (err) {
**系统能力:** SystemCapability.DistributedDataManager.Preferences.Core
| 名称 | 说明 |
| ------------- | ---------------------- |
| number | 表示值类型为数字。 |
| string | 表示值类型为字符。 |
| boolean | 表示值类型为布尔值。 |
| Array<number> | 表示值类型为数字数组。 |
| Array<string> | 表示值类型为字符数组。 |
| Array<bool> | 表示值类型为布尔数组。 |
| 名称 | 说明 |
| -------------- | ------------------------------ |
| number | 表示值类型为数字。 |
| string | 表示值类型为字符串。 |
| boolean | 表示值类型为布尔值。 |
| Array\<number> | 表示值类型为数字类型的数组。 |
| Array\<boolean> | 表示值类型为布尔类型的数组。 |
| Array\<string> | 表示值类型为字符串类型的数组。 |
......@@ -13,7 +13,7 @@
## 导入模块
```js
import dataStorage from '@ohos.data.storage';
import data_storage from '@ohos.data.storage';
```
## 常量
......@@ -26,7 +26,7 @@ import dataStorage from '@ohos.data.storage';
| MAX_VALUE_LENGTH | string | 是 | 否 | value的最大长度限制,需小于8192字节。 |
## dataStorage.getStorageSync
## data_storage.getStorageSync
getStorageSync(path: string): Storage
......@@ -46,24 +46,17 @@ getStorageSync(path: string): Storage
**示例:**
```js
import dataStorage from '@ohos.data.storage'
import featureAbility from '@ohos.ability.featureAbility'
import data_storage from '@ohos.data.storage'
var path = '/data/storage/el2/database/test_storage'
context.getFilesDir((err, path) => {
if (err) {
console.error('getFilesDir failed. err: ' + JSON.stringify(err));
return;
}
console.info('getFilesDir successful. path:' + JSON.stringify(path));
let storage = dataStorage.getStorageSync(path + '/mystore')
storage.putSync('startup', 'auto')
storage.flushSync()
});
let storage = data_storage.getStorageSync(path + '/mystore')
storage.putSync('startup', 'auto')
storage.flushSync()
```
## dataStorage.getStorage
## data_storage.getStorage
getStorage(path: string, callback: AsyncCallback&lt;Storage&gt;): void
......@@ -79,29 +72,21 @@ getStorage(path: string, callback: AsyncCallback&lt;Storage&gt;): void
**示例:**
```js
import dataStorage from '@ohos.data.storage'
import featureAbility from '@ohos.ability.featureAbility'
import data_storage from '@ohos.data.storage'
var path = '/data/storage/el2/database/test_storage'
context.getFilesDir((err, path) => {
data_storage.getStorage(path + '/mystore', function (err, storage) {
if (err) {
console.error('getFilesDir failed. err: ' + JSON.stringify(err));
console.info("Get the storage failed, path: " + path + '/mystore')
return;
}
console.info('getFilesDir successful. path:' + JSON.stringify(path));
dataStorage.getStorage(path + '/mystore', function (err, storage) {
if (err) {
console.info("Get the storage failed, path: " + path + '/mystore')
return;
}
storage.putSync('startup', 'auto')
storage.flushSync()
})
});
storage.putSync('startup', 'auto')
storage.flushSync()
})
```
## dataStorage.getStorage
## data_storage.getStorage
getStorage(path: string): Promise&lt;Storage&gt;
......@@ -121,28 +106,21 @@ getStorage(path: string): Promise&lt;Storage&gt;
**示例:**
```js
import dataStorage from '@ohos.data.storage'
import featureAbility from '@ohos.ability.featureAbility'
import data_storage from '@ohos.data.storage'
var path = '/data/storage/el2/database/test_storage'
context.getFilesDir((err, path) => {
if (err) {
console.info("Get the storage failed, path: " + path + '/mystore')
return;
}
console.info('getFilesDir successful. path:' + JSON.stringify(path));
let promisegetSt = dataStorage.getStorage(path + '/mystore')
promisegetSt.then((storage) => {
storage.putSync('startup', 'auto')
storage.flushSync()
}).catch((err) => {
console.info("Get the storage failed, path: " + path + '/mystore')
})
});
let getPromise = data_storage.getStorage(path + '/mystore')
getPromise.then((storage) => {
storage.putSync('startup', 'auto')
storage.flushSync()
}).catch((err) => {
console.info("Get the storage failed, path: " + path + '/mystore')
})
```
## dataStorage.deleteStorageSync
## data_storage.deleteStorageSync
deleteStorageSync(path: string): void
......@@ -157,11 +135,11 @@ deleteStorageSync(path: string): void
**示例:**
```js
dataStorage.deleteStorageSync(path + '/mystore')
data_storage.deleteStorageSync(path + '/mystore')
```
## dataStorage.deleteStorage
## data_storage.deleteStorage
deleteStorage(path: string, callback: AsyncCallback&lt;void&gt;): void
......@@ -177,7 +155,7 @@ deleteStorage(path: string, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
dataStorage.deleteStorage(path + '/mystore', function (err) {
data_storage.deleteStorage(path + '/mystore', function (err) {
if (err) {
console.info("Deleted failed with err: " + err)
return
......@@ -187,7 +165,7 @@ deleteStorage(path: string, callback: AsyncCallback&lt;void&gt;): void
```
## dataStorage.deleteStorage
## data_storage.deleteStorage
deleteStorage(path: string): Promise&lt;void&gt;
......@@ -207,7 +185,7 @@ deleteStorage(path: string): Promise&lt;void&gt;
**示例:**
```js
let promisedelSt = dataStorage.deleteStorage(path + '/mystore')
let promisedelSt = data_storage.deleteStorage(path + '/mystore')
promisedelSt.then(() => {
console.info("Deleted successfully.")
}).catch((err) => {
......@@ -216,7 +194,7 @@ deleteStorage(path: string): Promise&lt;void&gt;
```
## dataStorage.removeStorageFromCacheSync
## data_storage.removeStorageFromCacheSync
removeStorageFromCacheSync(path: string): void
......@@ -231,11 +209,11 @@ removeStorageFromCacheSync(path: string): void
**示例:**
```js
dataStorage.removeStorageFromCacheSync(path + '/mystore')
data_storage.removeStorageFromCacheSync(path + '/mystore')
```
## dataStorage.removeStorageFromCache
## data_storage.removeStorageFromCache
removeStorageFromCache(path: string, callback: AsyncCallback&lt;void&gt;): void
......@@ -251,7 +229,7 @@ removeStorageFromCache(path: string, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
dataStorage.removeStorageFromCache(path + '/mystore', function (err) {
data_storage.removeStorageFromCache(path + '/mystore', function (err) {
if (err) {
console.info("Removed storage from cache failed with err: " + err)
return
......@@ -261,7 +239,7 @@ removeStorageFromCache(path: string, callback: AsyncCallback&lt;void&gt;): void
```
## dataStorage.removeStorageFromCache
## data_storage.removeStorageFromCache
removeStorageFromCache(path: string): Promise&lt;void&gt;
......@@ -281,7 +259,7 @@ removeStorageFromCache(path: string): Promise&lt;void&gt;
**示例:**
```js
let promiserevSt = dataStorage.removeStorageFromCache(path + '/mystore')
let promiserevSt = data_storage.removeStorageFromCache(path + '/mystore')
promiserevSt.then(() => {
console.info("Removed storage from cache successfully.")
}).catch((err) => {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册