未验证 提交 4b9ce541 编写于 作者: O openharmony_ci 提交者: Gitee

!24048 arkts告警修改-object

Merge pull request !24048 from 李芮/ArkTs_0906
......@@ -47,7 +47,7 @@
1. 导入`@ohos.data.preferences`模块。
```js
```ts
import dataPreferences from '@ohos.data.preferences';
```
......@@ -56,7 +56,7 @@
Stage模型示例:
```js
```ts
import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base';
import window from '@ohos.window';
......@@ -73,7 +73,9 @@
// 请确保获取到Preferences实例后,再进行相关数据操作
})
} catch (err) {
console.error(`Failed to get preferences. Code:${err.code},message:${err.message}`);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error(`Failed to get preferences. Code:${code},message:${message}`);
}
}
}
......@@ -82,7 +84,7 @@
FA模型示例:
```js
```ts
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base';
......@@ -99,7 +101,9 @@
// 请确保获取到Preferences实例后,再进行相关数据操作
})
} catch (err) {
console.error(`Failed to get preferences. Code is ${err.code},message:${err.message}`);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error(`Failed to get preferences. Code is ${code},message:${message}`);
}
```
......@@ -114,7 +118,7 @@
示例代码如下所示:
```js
```ts
try {
if (preferences.hasSync('startup')) {
console.info("The key 'startup' is contained.");
......@@ -124,7 +128,9 @@
preferences.putSync('startup', 'auto');
}
} catch (err) {
console.error(`Failed to check the key 'startup'. Code:${err.code}, message:${err.message}`);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error(`Failed to check the key 'startup'. Code:${code}, message:${message}`);
}
```
......@@ -132,12 +138,14 @@
使用getSync()方法获取数据,即指定键对应的值。如果值为null或者非默认值类型,则返回默认数据。示例代码如下所示:
```js
```ts
try {
let val = preferences.getSync('startup', 'default');
console.info(`Succeeded in getting value of 'startup'. val: ${val}.`);
} catch (err) {
console.error(`Failed to get value of 'startup'. Code:${err.code}, message:${err.message}`);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error(`Failed to get value of 'startup'. Code:${code}, message:${message}`);
}
```
......@@ -146,11 +154,13 @@
使用deleteSync()方法删除指定键值对,示例代码如下所示:
```js
```ts
try {
preferences.deleteSync('startup');
} catch (err) {
console.error(`Failed to delete the key 'startup'. Code:${err.code}, message:${err.message}`);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error(`Failed to delete the key 'startup'. Code:${code}, message:${message}`);
}
```
......@@ -158,7 +168,7 @@
应用存入数据到Preferences实例后,可以使用flush()方法实现数据持久化。示例代码如下所示:
```js
```ts
try {
preferences.flush((err: BusinessError) => {
if (err) {
......@@ -168,7 +178,9 @@
console.info('Succeeded in flushing.');
})
} catch (err) {
console.error(`Failed to flush. Code:${err.code}, message:${err.message}`);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error(`Failed to flush. Code:${code}, message:${message}`);
}
```
......@@ -176,7 +188,7 @@
应用订阅数据变更需要指定observer作为回调方法。订阅的Key值发生变更后,当执行flush()方法时,observer被触发回调。示例代码如下所示:
```js
```ts
interface observer {
key: string
}
......@@ -213,7 +225,7 @@
示例代码如下所示:
```js
```ts
try {
dataPreferences.deletePreferences(this.context, 'myStore', (err: BusinessError) => {
if (err) {
......@@ -223,7 +235,9 @@
console.info('Succeeded in deleting preferences.');
})
} catch (err) {
console.error(`Failed to delete preferences. Code:${err.code}, message:${err.message}`);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error(`Failed to delete preferences. Code:${code}, message:${message}`);
}
```
......
......@@ -115,6 +115,7 @@
## 接口说明
以下是分布式对象跨设备数据同步功能的相关接口,大部分为异步接口。异步接口均有callback和Promise两种返回形式,下表均以callback形式为例,更多接口及使用方式请见[分布式数据对象](../reference/apis/js-apis-data-distributedobject.md)
本模块接口仅支持在JS文件中使用。
| 接口名称 | 描述 |
| -------- | -------- |
......@@ -151,26 +152,17 @@
// 导入模块
import distributedDataObject from '@ohos.data.distributedDataObject';
import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base';
import window from '@ohos.window';
interface sourceObject{
name: string,
age: number,
isVis: boolean
parent: { [key: string]: string },
list: { [key: string]: string }[]
}
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
let source: sourceObject = {
onWindowStageCreate(windowStage) {
// 创建对象,该对象包含4个属性类型:string、number、boolean和Object
let localObject = distributedDataObject.create(this.context, {
name: 'jack',
age: 18,
isVis: false,
parent: { mother: 'jack mom', father: 'jack Dad' },
list: [{ mother: 'jack mom' }, { father: 'jack Dad' }]
}
let localObject: distributedDataObject.DataObject = distributedDataObject.create(this.context, source);
});
}
}
```
......@@ -184,43 +176,34 @@
import featureAbility from '@ohos.ability.featureAbility';
// 获取context
let context = featureAbility.getContext();
interface sourceObject{
name: string,
age: number,
isVis: boolean
parent: { [key: string]: string },
list: { [key: string]: string }[]
}
let source: sourceObject = {
// 创建对象,该对象包含4个属性类型:string、number、boolean和Object
let localObject = distributedDataObject.create(context, {
name: 'jack',
age: 18,
isVis: false,
parent: { mother: 'jack mom', father: 'jack Dad' },
list: [{ mother: 'jack mom' }, { father: 'jack Dad' }]
}
// 创建对象,该对象包含4个属性类型:string、number、boolean和Object
let localObject: distributedDataObject.DataObject = distributedDataObject.create(context, source);
});
```
4. 加入同步组网。同步组网中的数据对象分为发起方和被拉起方。
```js
// 设备1加入sessionId
let sessionId: string = '123456';
let sessionId = '123456';
localObject.setSessionId(sessionId);
// 和设备1协同的设备2加入同一个session
// 创建对象,该对象包含4个属性类型:string、number、boolean和Object
let remoteSource: sourceObject = {
let remoteObject = distributedDataObject.create(this.context, {
name: undefined,
age: undefined, // undefined表示数据来自对端
isVis: true,
parent: undefined,
list: undefined
}
let remoteObject: distributedDataObject.DataObject = distributedDataObject.create(this.context, remoteSource);
});
// 收到status上线后remoteObject同步数据,即name变成jack,age是18
remoteObject.setSessionId(sessionId);
```
......@@ -228,19 +211,18 @@
5. 监听对象数据变更。可监听对端数据的变更,以callback作为变更回调实例。
```js
interface ChangeCallback {
sessionId: string,
fields: Array<string>
}
function changeCallback(sessionId, changeData) {
console.info(`change: ${sessionId}`);
localObject.on("change", (changeData:ChangeCallback) => {
console.info("change" + changeData.sessionId);
if (changeData.fields != null && changeData.fields != undefined) {
for (let index: number = 0; index < changeData.fields.length; index++) {
console.info(`The element ${localObject[changeData.fields[index]]} changed.`);
}
if (changeData !== null && changeData !== undefined) {
changeData.forEach(element => {
console.info(`The element ${localObject[element]} changed.`);
});
}
});
}
// 发起方要在changeCallback里刷新界面,则需要将正确的this绑定给changeCallback
localObject.on("change", this.changeCallback.bind(this));
```
6. 修改对象属性,对象属性支持基本类型(数字类型、布尔类型、字符串类型)以及复杂类型(数组、基本类型嵌套等)。
......@@ -275,14 +257,7 @@
```js
// 删除变更回调changeCallback
localObject.off('change',(changeData: ChangeCallback) => {
console.info("change" + changeData.sessionId);
if (changeData.fields != null && changeData.fields != undefined) {
for (let index: number = 0; index < changeData.fields.length; index++) {
console.info("changed !" + changeData.fields[index] + " " + g_object[changeData.fields[index]]);
}
}
});
localObject.off('change', this.changeCallback);
// 删除所有的变更回调
localObject.off('change');
```
......@@ -290,32 +265,27 @@
9. 监听分布式数据对象的上下线。可以监听对端分布式数据对象的上下线。
```js
interface onStatusCallback {
sessionId: string,
networkId: string,
status: 'online' | 'offline'
function statusCallback(sessionId, networkId, status) {
// 业务处理
}
localObject.on('status', (statusCallback: onStatusCallback) => {
console.info("status changed " + statusCallback.sessionId + " " + statusCallback.status + " " + statusCallback.networkId);
// 业务处理
});
localObject.on('status', this.statusCallback);
```
10. 保存和撤回已保存的数据对象。
```js
// 保存数据对象,如果应用退出后组网内设备需要恢复对象数据时调用
localObject.save("local").then((result: distributedDataObject.SaveSuccessResponse) => {
localObject.save('local').then((result) => {
console.info(`Succeeded in saving. SessionId:${result.sessionId},version:${result.version},deviceId:${result.deviceId}`);
}).catch((err: BusinessError) => {
}).catch((err) => {
console.error(`Failed to save. Code:${err.code},message:${err.message}`);
});
// 撤回保存的数据对象
localObject.revokeSave().then((result: distributedDataObject.RevokeSaveSuccessResponse) => {
localObject.revokeSave().then((result) => {
console.info(`Succeeded in revokeSaving. Session:${result.sessionId}`);
}).catch((err: BusinessError) => {
}).catch((err) => {
console.error(`Failed to revokeSave. Code:${err.code},message:${err.message}`);
});
```
......@@ -323,16 +293,8 @@
11. 删除监听分布式数据对象的上下线。可以指定删除监听的上下线回调;也可以不指定,这将会删除该分布式数据对象的所有上下线回调。
```js
interface offStatusCallback {
sessionId: string,
deviceId: string,
status: 'online' | 'offline'
}
// 删除上下线回调statusCallback
localObject.off('status', (statusCallback: offStatusCallback) => {
console.info("status changed " + statusCallback.sessionId + " " + statusCallback.status + " " + statusCallback.deviceId);
// 业务处理
});
localObject.off('status', this.statusCallback);
// 删除所有的上下线回调
localObject.off('status');
```
......@@ -341,7 +303,7 @@
```js
localObject.setSessionId(() => {
console.info('leave all session.');
console.info('leave all session.');
});
```
......
......@@ -5,6 +5,7 @@
> **说明:**
>
> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
> 本模块接口仅支持在JS文件中使用。
## 导入模块
......@@ -42,20 +43,10 @@ FA模型示例:
// 导入模块
import distributedObject from '@ohos.data.distributedDataObject';
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base';
// 获取context
let context = featureAbility.getContext();
interface sourceObject{
name: string,
age: number,
isVis: boolean
}
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
}
let g_object: distributedObject.DataObject = distributedObject.create(context, source);
// 创建对象,该对象包含4个属性类型:string、number、boolean和Object
let g_object = distributedObject.create(context, {name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});
```
Stage模型示例:
......@@ -64,23 +55,13 @@ Stage模型示例:
// 导入模块
import distributedObject from '@ohos.data.distributedDataObject';
import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base';
import window from '@ohos.window';
let g_object: distributedObject.DataObject = null;
interface sourceObject{
name: string,
age: number,
isVis: boolean
}
let g_object;
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
}
g_object = distributedObject.create(this.context, source);
onWindowStageCreate(windowStage){
// 创建对象,该对象包含4个属性类型:string、number、boolean和Object
g_object = distributedObject.create(this.context, {name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});
}
}
```
......@@ -103,7 +84,7 @@ genSessionId(): string
```js
import distributedObject from '@ohos.data.distributedDataObject';
let sessionId: string = distributedObject.genSessionId();
let sessionId = distributedObject.genSessionId();
```
## SaveSuccessResponse<sup>9+</sup>
......@@ -239,13 +220,13 @@ setSessionId(sessionId?: string): Promise&lt;void&gt;
// g_object加入分布式组网
g_object.setSessionId(distributedObject.genSessionId()).then (()=>{
console.info("join session.");
}).catch((error: BusinessError)=>{
}).catch((error)=>{
console.info("error:" + error.code + error.message);
});
// 退出分布式组网
g_object.setSessionId().then (()=>{
console.info("leave all session.");
}).catch((error: BusinessError)=>{
}).catch((error)=>{
console.info("error:" + error.code + error.message);
});
```
......@@ -268,18 +249,15 @@ on(type: 'change', callback: Callback<{ sessionId: string, fields: Array&lt;stri
**示例:**
```js
interface ChangeCallback {
sessionId: string,
fields: Array<string>
}
g_object.on("change", (changeData: ChangeCallback) => {
console.info("change" + changeData.sessionId);
if (changeData.fields != null && changeData.fields != undefined) {
for (let index: number = 0; index < changeData.fields.length; index++) {
console.info("changed !" + changeData.fields[index] + " " + g_object[changeData.fields[index]]);
}
globalThis.changeCallback = (sessionId, changeData) => {
console.info("change" + sessionId);
if (changeData != null && changeData != undefined) {
changeData.forEach(element => {
console.info("changed !" + element + " " + g_object[element]);
});
}
});
}
g_object.on("change", globalThis.changeCallback);
```
### off('change')<sup>9+</sup>
......@@ -302,14 +280,7 @@ off(type: 'change', callback?: Callback<{ sessionId: string, fields: Array&lt;st
```js
// 删除数据变更回调changeCallback
g_object.off("change", (changeData:ChangeCallback) => {
console.info("change" + changeData.sessionId);
if (changeData.fields != null && changeData.fields != undefined) {
for (let index: number = 0; index < changeData.fields.length; index++) {
console.info("changed !" + changeData.fields[index] + " " + g_object[changeData.fields[index]]);
}
}
});
g_object.off("change", globalThis.changeCallback);
// 删除所有的数据变更回调
g_object.off("change");
```
......@@ -332,15 +303,10 @@ on(type: 'status', callback: Callback<{ sessionId: string, networkId: string, st
**示例:**
```js
interface onStatusCallback {
sessionId: string,
networkId: string,
status: 'online' | 'offline'
globalThis.statusCallback = (sessionId, networkId, status) => {
globalThis.response += "status changed " + sessionId + " " + status + " " + networkId;
}
g_object.on("status", (statusCallback:onStatusCallback) => {
console.info("status changed " + statusCallback.sessionId + " " + statusCallback.status + " " + statusCallback.networkId);
});
g_object.on("status", globalThis.statusCallback);
```
### off('status')<sup>9+</sup>
......@@ -362,15 +328,11 @@ off(type: 'status', callback?: Callback<{ sessionId: string, deviceId: string, s
**示例:**
```js
interface offStatusCallback {
sessionId: string,
networkId: string,
status: 'online' | 'offline'
globalThis.statusCallback = (sessionId, networkId, status) => {
globalThis.response += "status changed " + sessionId + " " + status + " " + networkId;
}
// 删除上下线回调changeCallback
g_object.off("status", (statusCallback:StatusCallback) => {
console.info("status changed " + statusCallback.sessionId + " " + statusCallback.status + " " + statusCallback.networkId);
});
g_object.off("status",globalThis.statusCallback);
// 删除所有的上下线回调
g_object.off("status");
```
......@@ -402,7 +364,7 @@ save(deviceId: string, callback: AsyncCallback&lt;SaveSuccessResponse&gt;): void
```ts
g_object.setSessionId("123456");
g_object.save("local", (err: BusinessError, result:distributedObject.SaveSuccessResponse) => {
g_object.save("local", (err, result) => {
if (err) {
console.info("save failed, error code = " + err.code);
console.info("save failed, error message: " + err.message);
......@@ -447,12 +409,12 @@ save(deviceId: string): Promise&lt;SaveSuccessResponse&gt;
```js
g_object.setSessionId("123456");
g_object.save("local").then((result: distributedObject.SaveSuccessResponse) => {
g_object.save("local").then((result) => {
console.info("save callback");
console.info("save sessionId " + result.sessionId);
console.info("save version " + result.version);
console.info("save deviceId " + result.deviceId);
}).catch((err: BusinessError) => {
}).catch((err) => {
console.info("save failed, error code = " + err.code);
console.info("save failed, error message: " + err.message);
});
......@@ -480,7 +442,7 @@ revokeSave(callback: AsyncCallback&lt;RevokeSaveSuccessResponse&gt;): void
```js
g_object.setSessionId("123456");
// 持久化数据
g_object.save("local", (err: BusinessError, result: distributedObject.SaveSuccessResponse) => {
g_object.save("local", (err, result) => {
if (err) {
console.info("save failed, error code = " + err.code);
console.info("save failed, error message: " + err.message);
......@@ -492,7 +454,7 @@ g_object.save("local", (err: BusinessError, result: distributedObject.SaveSucces
console.info("save deviceId: " + result.deviceId);
});
// 删除持久化保存的数据
g_object.revokeSave((err: BusinessError, result: distributedObject.RevokeSaveSuccessResponse) => {
g_object.revokeSave((err, result) => {
if (err) {
console.info("revokeSave failed, error code = " + err.code);
console.info("revokeSave failed, error message: " + err.message);
......@@ -525,20 +487,20 @@ revokeSave(): Promise&lt;RevokeSaveSuccessResponse&gt;
```ts
g_object.setSessionId("123456");
// 持久化数据
g_object.save("local").then((result: distributedObject.SaveSuccessResponse) => {
g_object.save("local").then((result) => {
console.info("save callback");
console.info("save sessionId " + result.sessionId);
console.info("save version " + result.version);
console.info("save deviceId " + result.deviceId);
}).catch((err: BusinessError) => {
}).catch((err) => {
console.info("save failed, error code = " + err.code);
console.info("save failed, error message: " + err.message);
});
// 删除持久化保存的数据
g_object.revokeSave().then((result: distributedObject.RevokeSaveSuccessResponse) => {
g_object.revokeSave().then((result) => {
console.info("revokeSave callback");
console.info("sessionId" + result.sessionId);
}).catch((err: BusinessError)=> {
}).catch((err)=> {
console.info("revokeSave failed, error code = " + err.code);
console.info("revokeSave failed, error message = " + err.message);
});
......@@ -573,17 +535,8 @@ createDistributedObject(source: object): DistributedObject
```js
import distributedObject from '@ohos.data.distributedDataObject';
interface sourceObject{
name: string,
age: number,
isVis: boolean
}
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
}
let g_object: distributedObject.DistributedObject = distributedObject.createDistributedObject(source);
// 创建对象,对象包含4个属性类型,string,number,boolean和Object
let g_object = distributedObject.createDistributedObject({name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});
```
## DistributedObject<sup>(deprecated)</sup>
......@@ -620,17 +573,7 @@ setSessionId(sessionId?: string): boolean
```js
import distributedObject from '@ohos.data.distributedDataObject';
interface sourceObject{
name: string,
age: number,
isVis: boolean
}
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
}
let g_object: distributedObject.DistributedObject = distributedObject.createDistributedObject(source);
let g_object = distributedObject.createDistributedObject({name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});;
// g_object加入分布式组网
g_object.setSessionId(distributedObject.genSessionId());
// 设置为""退出分布式组网
......@@ -660,29 +603,16 @@ on(type: 'change', callback: Callback<{ sessionId: string, fields: Array&lt;stri
```js
import distributedObject from '@ohos.data.distributedDataObject';
interface sourceObject{
name: string,
age: number,
isVis: boolean
}
interface ChangeCallback {
sessionId: string,
fields: Array<string>
}
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
}
let g_object: distributedObject.DistributedObject = distributedObject.createDistributedObject(source);
g_object.on("change", (changeData:ChangeCallback) => {
console.info("change" + changeData.sessionId);
if (changeData.fields != null && changeData.fields != undefined) {
for (let index: number = 0; index < changeData.fields.length; index++) {
console.info("changed !" + changeData.fields[index] + " " + g_object[changeData.fields[index]]);
}
let g_object = distributedObject.createDistributedObject({name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});
globalThis.changeCallback = (sessionId, changeData) => {
console.info("change" + sessionId);
if (changeData != null && changeData != undefined) {
changeData.forEach(element => {
console.info("changed !" + element + " " + g_object[element]);
});
}
});
}
g_object.on("change", globalThis.changeCallback);
```
### off('change')<sup>(deprecated)</sup>
......@@ -709,30 +639,9 @@ off(type: 'change', callback?: Callback<{ sessionId: string, fields: Array&lt;st
```js
import distributedObject from '@ohos.data.distributedDataObject';
interface sourceObject{
name: string,
age: number,
isVis: boolean
}
interface ChangeCallback {
sessionId: string,
fields: Array<string>
}
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
}
let g_object: distributedObject.DistributedObject = distributedObject.createDistributedObject(source);
let g_object = distributedObject.createDistributedObject({name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});
// 删除数据变更回调changeCallback
g_object.off("change", (changeData:ChangeCallback) => {
console.info("change" + changeData.sessionId);
if (changeData.fields != null && changeData.fields != undefined) {
for (let index: number = 0; index < changeData.fields.length; index++) {
console.info("changed !" + changeData.fields[index] + " " + g_object[changeData.fields[index]]);
}
}
});
g_object.off("change", globalThis.changeCallback);
// 删除所有的数据变更回调
g_object.off("change");
```
......@@ -760,27 +669,11 @@ on(type: 'status', callback: Callback<{ sessionId: string, networkId: string, st
```js
import distributedObject from '@ohos.data.distributedDataObject';
interface sourceObject{
name: string,
age: number,
isVis: boolean
}
interface StatusCallback {
sessionId: string,
networkId: string,
status: 'online' | 'offline'
}
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
globalThis.statusCallback = (sessionId, networkId, status) => {
globalThis.response += "status changed " + sessionId + " " + status + " " + networkId;
}
let g_object: distributedObject.DistributedObject = distributedObject.createDistributedObject(source);
g_object.on("status", (statusCallback:StatusCallback) => {
console.info("status changed " + statusCallback.sessionId + " " + statusCallback.status + " " + statusCallback.networkId);
});
let g_object = distributedObject.createDistributedObject({name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});
g_object.on("status", globalThis.statusCallback);
```
### off('status')<sup>(deprecated)</sup>
......@@ -807,26 +700,12 @@ off(type: 'status', callback?: Callback<{ sessionId: string, deviceId: string, s
```js
import distributedObject from '@ohos.data.distributedDataObject';
interface sourceObject{
name: string,
age: number,
isVis: boolean
let g_object = distributedObject.createDistributedObject({name:"Amy", age:18, isVis:false, parent:{mother:"jack mom",father:"jack Dad"}});
globalThis.statusCallback = (sessionId, networkId, status) => {
globalThis.response += "status changed " + sessionId + " " + status + " " + networkId;
}
interface offStatusCallback {
sessionId: string,
deviceId: string,
status: 'online' | 'offline'
}
let source: sourceObject = {
name: "amy",
age:18,
isVis:false
}
let g_object: distributedObject.DistributedObject = distributedObject.createDistributedObject(source);
// 删除上下线回调changeCallback
g_object.off("status", (statusCallback:offStatusCallback) => {
console.info("status changed " + statusCallback.sessionId + " " + statusCallback.status + " " + statusCallback.deviceId);
});
g_object.off("status",globalThis.statusCallback);
// 删除所有的上下线回调
g_object.off("status");
```
```
\ No newline at end of file
......@@ -12,7 +12,7 @@
## 导入模块
```js
```ts
import data_preferences from '@ohos.data.preferences';
```
......@@ -46,13 +46,13 @@ getPreferences(context: Context, name: string, callback: AsyncCallback&lt;Prefer
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base';
let context = featureAbility.getContext();
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
try {
data_preferences.getPreferences(context, 'myStore', (err: BusinessError, val: data_preferences.Preferences) => {
......@@ -64,7 +64,9 @@ try {
console.info("Succeeded in getting preferences.");
})
} catch (err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
```
......@@ -75,7 +77,7 @@ import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base';
import window from '@ohos.window';
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
......@@ -89,7 +91,9 @@ class EntryAbility extends UIAbility {
console.info("Succeeded in getting preferences.");
})
} catch (err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -120,14 +124,14 @@ getPreferences(context: Context, name: string): Promise&lt;Preferences&gt;
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
let context = featureAbility.getContext();
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
try {
let promise = data_preferences.getPreferences(context, 'myStore');
promise.then((object: data_preferences.Preferences) => {
......@@ -136,8 +140,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
```
......@@ -148,7 +154,7 @@ import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base'
import window from '@ohos.window';
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
......@@ -160,8 +166,10 @@ class EntryAbility extends UIAbility {
}).catch((err: BusinessError) => {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -196,13 +204,13 @@ getPreferences(context: Context, options: Options, callback: AsyncCallback&lt;Pr
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
let context = featureAbility.getContext();
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
try {
let options: data_preferences.Options = { name: 'myStore', dataGroupId:'myId' };
......@@ -215,7 +223,9 @@ try {
console.info("Succeeded in getting preferences.");
})
} catch (err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
```
......@@ -227,7 +237,7 @@ import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base'
import window from '@ohos.window';
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
......@@ -242,7 +252,9 @@ class EntryAbility extends UIAbility {
console.info("Succeeded in getting preferences.");
})
} catch (err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -282,13 +294,13 @@ getPreferences(context: Context, options: Options): Promise&lt;Preferences&gt;
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
let context = featureAbility.getContext();
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
try {
let options: data_preferences.Options = { name: 'myStore' };
let promise = data_preferences.getPreferences(context, options);
......@@ -298,8 +310,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
```
......@@ -310,7 +324,7 @@ import UIAbility from '@ohos.app.ability.UIAbility';
import { BusinessError } from '@ohos.base'
import window from '@ohos.window';
let preferences: data_preferences.Preferences = null;
let preferences: data_preferences.Preferences | null = null;
class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
......@@ -323,8 +337,10 @@ class EntryAbility extends UIAbility {
}).catch((err: BusinessError) => {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -360,7 +376,7 @@ deletePreferences(context: Context, name: string, callback: AsyncCallback&lt;voi
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -376,7 +392,9 @@ try {
console.info("Succeeded in deleting preferences." );
})
} catch (err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
```
......@@ -398,7 +416,9 @@ class EntryAbility extends UIAbility {
console.info("Succeeded in deleting preferences." );
})
} catch (err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -439,7 +459,7 @@ deletePreferences(context: Context, name: string): Promise&lt;void&gt;
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -453,8 +473,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
```
......@@ -474,8 +496,10 @@ class EntryAbility extends UIAbility {
}).catch((err: BusinessError) => {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -513,7 +537,7 @@ deletePreferences(context: Context, options: Options, callback: AsyncCallback&lt
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -530,7 +554,9 @@ try {
console.info("Succeeded in deleting preferences." );
})
} catch (err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
```
......@@ -553,7 +579,9 @@ class EntryAbility extends UIAbility {
console.info("Succeeded in deleting preferences." );
})
} catch (err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -597,7 +625,7 @@ deletePreferences(context: Context, options: Options): Promise&lt;void&gt;
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -612,8 +640,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
```
......@@ -634,8 +664,10 @@ class EntryAbility extends UIAbility {
}).catch((err: BusinessError) => {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to delete preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -666,7 +698,7 @@ removePreferencesFromCache(context: Context, name: string, callback: AsyncCallba
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -681,7 +713,9 @@ try {
console.info("Succeeded in removing preferences.");
})
} catch (err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
```
......@@ -703,7 +737,9 @@ class EntryAbility extends UIAbility {
console.info("Succeeded in removing preferences.");
})
} catch (err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -738,7 +774,7 @@ removePreferencesFromCache(context: Context, name: string): Promise&lt;void&gt;
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -751,8 +787,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
```
......@@ -772,8 +810,10 @@ class EntryAbility extends UIAbility {
}).catch((err: BusinessError) => {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -802,14 +842,16 @@ removePreferencesFromCacheSync(context: Context, name: string): void
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
let context = featureAbility.getContext();
try {
data_preferences.removePreferencesFromCacheSync(context, 'myStore');
} catch(err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
```
......@@ -822,8 +864,10 @@ class EntryAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
try {
data_preferences.removePreferencesFromCacheSync(this.context, 'myStore');
} catch(err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -862,7 +906,7 @@ removePreferencesFromCache(context: Context, options: Options, callback: AsyncCa
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -877,7 +921,9 @@ try {
console.info("Succeeded in removing preferences.");
})
} catch (err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
```
......@@ -900,7 +946,9 @@ class EntryAbility extends UIAbility {
console.info("Succeeded in removing preferences.");
})
} catch (err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -944,7 +992,7 @@ removePreferencesFromCache(context: Context, options: Options): Promise&lt;void&
FA模型示例:
```js
```ts
// 获取context
import featureAbility from '@ohos.ability.featureAbility';
import { BusinessError } from '@ohos.base'
......@@ -957,8 +1005,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
```
......@@ -979,8 +1029,10 @@ class EntryAbility extends UIAbility {
}).catch((err: BusinessError) => {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
}
}
......@@ -1022,7 +1074,7 @@ get(key: string, defValue: ValueType, callback: AsyncCallback&lt;ValueType&gt;):
**示例:**
```js
```ts
try {
preferences.get('startup', 'default', (err: BusinessError, val: data_preferences.ValueType) => {
if (err) {
......@@ -1032,7 +1084,9 @@ try {
console.info("Succeeded in getting value of 'startup'. val: " + val);
})
} catch (err) {
console.error("Failed to get value of 'startup'. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get value of 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1060,7 +1114,7 @@ get(key: string, defValue: ValueType): Promise&lt;ValueType&gt;
**示例:**
```js
```ts
try {
let promise = preferences.get('startup', 'default');
promise.then((data: data_preferences.ValueType) => {
......@@ -1068,8 +1122,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to get value of 'startup'. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to get value of 'startup'. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get value of 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1096,12 +1152,14 @@ getSync(key: string, defValue: ValueType): ValueType
**示例:**
```js
```ts
try {
let value: data_preferences.ValueType = preferences.getSync('startup', 'default');
console.info("Succeeded in getting value of 'startup'. Data: " + value);
} catch(err) {
console.error("Failed to get value of 'startup'. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get value of 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1121,19 +1179,28 @@ getAll(callback: AsyncCallback&lt;Object&gt;): void;
**示例:**
```js
```ts
// 由于ArkTS中无Object.keys,且无法使用for..in...
// 若报ArkTS问题,请将此方法单独抽离至一个ts文件中并暴露,在需要用到的ets文件中引入使用
function getObjKeys(obj: Object): string[] {
let keys = Object.keys(obj);
return keys;
}
try {
preferences.getAll((err: BusinessError, value: data_preferences.ValueType) => {
preferences.getAll((err: BusinessError, value: Object) => {
if (err) {
console.error("Failed to get all key-values. code =" + err.code + ", message =" + err.message);
return;
}
let allKeys = Object.keys(value);
let allKeys = getObjKeys(value);
console.info("getAll keys = " + allKeys);
console.info("getAll object = " + JSON.stringify(value));
})
} catch (err) {
console.error("Failed to get all key-values. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get all key-values. code =" + code + ", message =" + message);
}
```
......@@ -1154,18 +1221,27 @@ getAll(): Promise&lt;Object&gt;
**示例:**
```js
```ts
// 由于ArkTS中无Object.keys,且无法使用for..in...
// 若报ArkTS问题,请将此方法单独抽离至一个ts文件中并暴露,在需要用到的ets文件中引入使用
function getObjKeys(obj: Object): string[] {
let keys = Object.keys(obj);
return keys;
}
try {
let promise = preferences.getAll();
promise.then((value: data_preferences.ValueType) => {
let allKeys = Object.keys(value);
promise.then((value: Object) => {
let allKeys = getObjKeys(value);
console.info('getAll keys = ' + allKeys);
console.info("getAll object = " + JSON.stringify(value));
}).catch((err: BusinessError) => {
console.error("Failed to get all key-values. code =" + err.code + ", message =" + err.message);
})
} catch (err) {
console.error("Failed to get all key-values. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get all key-values. code =" + code + ", message =" + message);
}
```
......@@ -1185,14 +1261,23 @@ getAllSync(): Object
**示例:**
```js
```ts
// 由于ArkTS中无Object.keys,且无法使用for..in...
// 若报ArkTS问题,请将此方法单独抽离至一个ts文件中并暴露,在需要用到的ets文件中引入使用
function getObjKeys(obj: Object): string[] {
let keys = Object.keys(obj);
return keys;
}
try {
let value = preferences.getAllSync();
let allKeys = Object.keys(value);
let allKeys = getObjKeys(value);
console.info('getAll keys = ' + allKeys);
console.info("getAll object = " + JSON.stringify(value));
} catch (err) {
console.error("Failed to get all key-values. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get all key-values. code =" + code + ", message =" + message);
}
```
......@@ -1214,7 +1299,7 @@ put(key: string, value: ValueType, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
```ts
try {
preferences.put('startup', 'auto', (err: BusinessError) => {
if (err) {
......@@ -1224,7 +1309,9 @@ try {
console.info("Succeeded in putting value of 'startup'.");
})
} catch (err) {
console.error("Failed to put value of 'startup'. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to put value of 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1252,7 +1339,7 @@ put(key: string, value: ValueType): Promise&lt;void&gt;
**示例:**
```js
```ts
try {
let promise = preferences.put('startup', 'auto');
promise.then(() => {
......@@ -1260,8 +1347,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to put value of 'startup'. code =" + err.code +", message =" + err.message);
})
} catch(err) {
console.error("Failed to put value of 'startup'. code =" + err.code +", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to put value of 'startup'. code =" + code +", message =" + message);
}
```
......@@ -1283,11 +1372,13 @@ putSync(key: string, value: ValueType): void
**示例:**
```js
```ts
try {
preferences.putSync('startup', 'auto');
} catch(err) {
console.error("Failed to put value of 'startup'. code =" + err.code +", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to put value of 'startup'. code =" + code +", message =" + message);
}
```
......@@ -1309,7 +1400,7 @@ has(key: string, callback: AsyncCallback&lt;boolean&gt;): void
**示例:**
```js
```ts
try {
preferences.has('startup', (err: BusinessError, val: boolean) => {
if (err) {
......@@ -1323,7 +1414,9 @@ try {
}
})
} catch (err) {
console.error("Failed to check the key 'startup'. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to check the key 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1350,7 +1443,7 @@ has(key: string): Promise&lt;boolean&gt;
**示例:**
```js
```ts
try {
let promise = preferences.has('startup');
promise.then((val: boolean) => {
......@@ -1362,8 +1455,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to check the key 'startup'. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to check the key 'startup'. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to check the key 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1390,7 +1485,7 @@ hasSync(key: string): boolean
**示例:**
```js
```ts
try {
let isExist: boolean = preferences.hasSync('startup');
if (isExist) {
......@@ -1398,8 +1493,10 @@ try {
} else {
console.info("The key 'startup' dose not contain.");
}
} catch(err) {
console.error("Failed to check the key 'startup'. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to check the key 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1421,7 +1518,7 @@ delete(key: string, callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
```ts
try {
preferences.delete('startup', (err: BusinessError) => {
if (err) {
......@@ -1431,7 +1528,9 @@ try {
console.info("Succeeded in deleting the key 'startup'.");
})
} catch (err) {
console.error("Failed to delete the key 'startup'. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete the key 'startup'. code =" + code + ", message =" + message);
}
```
......@@ -1458,7 +1557,7 @@ delete(key: string): Promise&lt;void&gt;
**示例:**
```js
```ts
try {
let promise = preferences.delete('startup');
promise.then(() => {
......@@ -1466,8 +1565,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to delete the key 'startup'. code =" + err.code +", message =" + err.message);
})
} catch(err) {
console.error("Failed to delete the key 'startup'. code =" + err.code +", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete the key 'startup'. code =" + code +", message =" + message);
}
```
......@@ -1488,11 +1589,13 @@ deleteSync(key: string): void
**示例:**
```js
```ts
try {
preferences.deleteSync('startup');
} catch(err) {
console.error("Failed to delete the key 'startup'. code =" + err.code +", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to delete the key 'startup'. code =" + code +", message =" + message);
}
```
......@@ -1513,7 +1616,7 @@ flush(callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
```ts
try {
preferences.flush((err: BusinessError) => {
if (err) {
......@@ -1523,7 +1626,9 @@ try {
console.info("Succeeded in flushing.");
})
} catch (err) {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to flush. code =" + code + ", message =" + message);
}
```
......@@ -1544,7 +1649,7 @@ flush(): Promise&lt;void&gt;
**示例:**
```js
```ts
try {
let promise = preferences.flush();
promise.then(() => {
......@@ -1553,7 +1658,9 @@ try {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
})
} catch (err) {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to flush. code =" + code + ", message =" + message);
}
```
......@@ -1574,7 +1681,7 @@ clear(callback: AsyncCallback&lt;void&gt;): void
**示例:**
```js
```ts
try {
preferences.clear((err: BusinessError) =>{
if (err) {
......@@ -1584,7 +1691,9 @@ try {
console.info("Succeeded in clearing.");
})
} catch (err) {
console.error("Failed to clear. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to clear. code =" + code + ", message =" + message);
}
```
......@@ -1605,7 +1714,7 @@ clear(): Promise&lt;void&gt;
**示例:**
```js
```ts
try {
let promise = preferences.clear();
promise.then(() => {
......@@ -1613,8 +1722,10 @@ try {
}).catch((err: BusinessError) => {
console.error("Failed to clear. code =" + err.code + ", message =" + err.message);
})
} catch(err) {
console.error("Failed to clear. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to clear. code =" + code + ", message =" + message);
}
```
......@@ -1629,11 +1740,13 @@ clearSync(): void
**示例:**
```js
```ts
try {
preferences.clearSync();
} catch(err) {
console.error("Failed to clear. code =" + err.code + ", message =" + err.message);
} catch (err) {
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to clear. code =" + code + ", message =" + message);
}
```
......@@ -1655,7 +1768,7 @@ on(type: 'change', callback: Callback&lt;{ key : string }&gt;): void
**示例:**
```js
```ts
interface observer {
key: string
}
......@@ -1685,7 +1798,9 @@ try {
})
})
} catch (err) {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to flush. code =" + code + ", message =" + message);
}
```
......@@ -1716,7 +1831,7 @@ on(type: 'multiProcessChange', callback: Callback&lt;{ key : string }&gt;): void
**示例1:**
```js
```ts
interface observer {
key: string
}
......@@ -1746,13 +1861,15 @@ try {
})
})
} catch (err) {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to flush. code =" + code + ", message =" + message);
}
```
**示例2:**
```js
```ts
interface observer {
key: string
}
......@@ -1776,7 +1893,9 @@ try {
console.info("Succeeded in removing preferences.");
})
} catch (err) {
console.error("Failed to remove preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to remove preferences. code =" + code + ", message =" + message);
}
try {
......@@ -1789,7 +1908,9 @@ try {
console.info("Succeeded in getting preferences.");
})
} catch (err) {
console.error("Failed to get preferences. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to get preferences. code =" + code + ", message =" + message);
}
});
preferences.put('startup', 'manual', (err: BusinessError) => {
......@@ -1809,7 +1930,9 @@ try {
})
})
} catch (err) {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to flush. code =" + code + ", message =" + message);
}
```
......@@ -1830,7 +1953,7 @@ off(type: 'change', callback?: Callback&lt;{ key : string }&gt;): void
**示例:**
```js
```ts
interface observer {
key: string
}
......@@ -1863,7 +1986,9 @@ try {
})
})
} catch (err) {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to flush. code =" + code + ", message =" + message);
}
```
......@@ -1884,7 +2009,7 @@ off(type: 'multiProcessChange', callback?: Callback&lt;{ key : string }&gt;): vo
**示例:**
```js
```ts
interface observer {
key: string
}
......@@ -1918,7 +2043,9 @@ try {
})
})
} catch (err) {
console.error("Failed to flush. code =" + err.code + ", message =" + err.message);
let code = (err as BusinessError).code;
let message = (err as BusinessError).message;
console.error("Failed to flush. code =" + code + ", message =" + message);
}
```
## ValueType
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册