# @ohos.data.cloudData (端云服务)(系统接口)
端云服务提供端云协同、端云共享和端云策略。
端云协同提供结构化数据(RDB Store)端云同步的能力。即:云作为数据的中心节点,通过与云的数据同步,实现数据云备份、同账号设备间的数据一致性。
端云共享是在端云协同能力基础上,实现跨账号的数据共享。其中,端云共享资源标识是指:对于应用发起共享的每一条数据记录,该条数据在进行端云同步时会生成唯一的共享资源标识(字符串类型的值),此标识则作为该条数据记录共享时的识别标识。
端云共享参与者是指: 共享发起者根据好友列表选中的参与当前数据共享的所有人员。
端云共享邀请码是指: 共享发起后,在共享的服务端会生成当前共享操作的邀请码,并将该邀请码附加到当前共享邀请中,通过push消息推送到被邀请者的设备端,被邀请者可以通过该邀请码进行邀请的确认。
该模块提供以下端云服务相关的常用功能:
- [Config](#config):提供配置端云协同的方法,包括云同步打开、关闭、清理数据、数据变化通知。
- [sharing11+](#sharing11):提供端云共享的方法,包括发起共享、取消共享、退出共享、更改共享数据权限、查找共享参与者、确认邀请、更改已确认的邀请、查找共享资源。
> **说明:**
>
> - 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
>
> - 当前页面仅包含本模块的系统接口,其他公开接口参见[@ohos.data.cloudData (端云服务)](js-apis-data-cloudData.md)。
>
> - 使用本模块需要实现云服务功能。
## 导入模块
```ts
import { cloudData } from '@kit.ArkData';
```
## ClearAction
清除本地下载的云端数据的行为枚举。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
| 名称 | 说明 |
| --------- | ---------------------------- |
| CLEAR_CLOUD_INFO | 清除从云端下载的数据的云标识,相关数据作为本地数据保存。 |
| CLEAR_CLOUD_DATA_AND_INFO |清除从云端下载的数据,不包括本地已修改的云端数据。 |
## ExtraData11+
透传数据,携带通知数据变更所需要的信息。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
| 名称 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- | ------------------------------------------------------------ |
| eventId | string | 是 | 如果传值为"cloud_data_change",表示云数据变更。 |
| extraData | string | 是 | 透传数据,extraData是json结构的字符串,其中必须包括"data"字段,"data"中是通知变更所需要的信息,包含账号、应用名、数据库名、数据库类型和数据库表名,所有字段均不能为空。
**样例:**
```ts
//accountId:用户打开的云账号ID
//bundleName:应用包名
//containerName:云上数据库名称
//databaseScopes:云上数据库类型
//recordTypes:云上数据库表名
interface ExtraData {
eventId: "cloud_data_change",
extraData: '{
"data": "{
"accountId": "aaa",
"bundleName": "com.bbb.xxx",
"containerName": "alias",
"databaseScopes": ["private", "shared"],
"recordTypes": ["xxx", "yyy", "zzz"]
}"
}'
}
```
## StatisticInfo12+
返回数据,携带端云同步统计信息所需要的信息。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
| 名称 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- |-----------------------------------------------------|
| table | string | 是 | 查询的表名。如返回值为"cloud_notes",表示查询结果是表名为"cloud_notes"的同步信息。 |
| inserted | number | 是 | 本地新增且云端还未同步数据的条数,如返回值为2,表示本地新增2条数据且云端还未同步。 |
| updated | number | 是 | 云端同步之后本地或云端修改还未同步的条数,如返回值为2,表示本地或云端修改还有2条数据未同步。 |
| normal | number | 是 | 端云一致的数据。如返回值为2,表示本地与云端一致的数据为2条。 |
## SyncInfo12+
返回数据,上一次端云同步所需要的信息。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
| 名称 | 类型 | 必填 | 说明 |
| ---------- | ------------------------------------------------------------ | ---- | -------------------------- |
| startTime | Date | 是 | 上一次端云同步的开始时间。 |
| finishTime | Date | 是 | 上一次端云同步的结束时间。 |
| code | [relationalStore.ProgressCode](js-apis-data-relationalStore.md#progresscode10) | 是 | 上一次端云同步过程的状态。 |
## Config
提供配置端云协同的方法,包括云同步打开、关闭、清理数据、数据变化通知。
### enableCloud
static enableCloud(accountId: string, switches: Record, callback: AsyncCallback<void>): void
打开端云协同,使用callback异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ------------------------------------------------------------ |
| accountId | string | 是 | 具体打开的云账号ID。 |
| switches | Record | 是 | 各应用的端云协同开关信息,true为打开该应用端云开关,false为关闭该应用端云开关。 |
| callback | AsyncCallback<void> | 是 | 回调函数。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
let switches: Record = { 'test_bundleName1': true, 'test_bundleName2': false };
try {
cloudData.Config.enableCloud(account, switches, (err: BusinessError) => {
if (err === undefined) {
console.info('Succeeded in enabling cloud');
} else {
console.error(`Failed to enable.Code: ${err.code}, message: ${err.message}`);
}
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### enableCloud
static enableCloud(accountId: string, switches: Record): Promise<void>
打开端云协同,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ------------------------------------------------------------ |
| accountId | string | 是 | 具体打开的云账号ID。 |
| switches | Record | 是 | 各应用的端云协同开关信息,true为打开该应用端云开关,false为关闭该应用端云开关。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<void> | 无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
let switches: Record = { 'test_bundleName1': true, 'test_bundleName2': false };
try {
cloudData.Config.enableCloud(account, switches).then(() => {
console.info('Succeeded in enabling cloud');
}).catch((err: BusinessError) => {
console.error(`Failed to enable.Code: ${err.code}, message: ${err.message}`);
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### disableCloud
static disableCloud(accountId: string, callback: AsyncCallback<void>): void
关闭端云协同,使用callback异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | -------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
| callback | AsyncCallback<void> | 是 | 回调函数。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
try {
cloudData.Config.disableCloud(account, (err: BusinessError) => {
if (err === undefined) {
console.info('Succeeded in disabling cloud');
} else {
console.error(`Failed to disableCloud. Code: ${err.code}, message: ${err.message}`);
}
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### disableCloud
static disableCloud(accountId: string): Promise<void>
关闭端云协同,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- | -------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<void> | 无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
try {
cloudData.Config.disableCloud(account).then(() => {
console.info('Succeeded in disabling cloud');
}).catch((err: BusinessError) => {
console.error(`Failed to disableCloud. Code: ${err.code}, message: ${err.message}`);
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### changeAppCloudSwitch
static changeAppCloudSwitch(accountId: string, bundleName: string, status: boolean, callback: AsyncCallback<void>): void
修改单个应用端云协同开关,使用callback异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
| bundleName| string | 是 | 应用名。 |
| status | boolean | 是 | 应用的端云协同开关信息,true为打开该应用端云开关,false为关闭该应用端云开关。 |
| callback | AsyncCallback<void> | 是 | 回调函数。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
let bundleName: string = 'test_bundleName';
try {
cloudData.Config.changeAppCloudSwitch(account, bundleName, true, (err: BusinessError) => {
if (err === undefined) {
console.info('Succeeded in changing App cloud switch');
} else {
console.error(`Failed to change App cloud switch. Code: ${err.code}, message: ${err.message}`);
}
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### changeAppCloudSwitch
static changeAppCloudSwitch(accountId: string, bundleName: string, status: boolean): Promise<void>
修改单个应用端云协同开关,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
| bundleName| string | 是 | 应用名。 |
| status | boolean | 是 | 应用的端云协同开关信息,true为打开该应用端云开关,false为关闭该应用端云开关。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<void> | 无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
let bundleName: string = 'test_bundleName';
try {
cloudData.Config.changeAppCloudSwitch(account, bundleName, true).then(() => {
console.info('Succeeded in changing App cloud switch');
}).catch((err: BusinessError) => {
console.error(`Failed to change App cloud switch. Code is ${err.code}, message is ${err.message}`);
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### notifyDataChange
static notifyDataChange(accountId: string, bundleName: string, callback: AsyncCallback<void>): void
通知云端的数据变更,使用callback异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Server
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------- | ---- | -------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
| bundleName | string | 是 | 应用名。 |
| callback | AsyncCallback<void> | 是 | 回调函数。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
let bundleName: string = 'test_bundleName';
try {
cloudData.Config.notifyDataChange(account, bundleName, (err: BusinessError) => {
if (err === undefined) {
console.info('Succeeded in notifying the change of data');
} else {
console.error(`Failed to notify the change of data. Code: ${err.code}, message: ${err.message}`);
}
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### notifyDataChange
static notifyDataChange(accountId: string,bundleName: string): Promise<void>
通知云端的数据变更,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Server
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------ | ---- | -------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
| bundleName | string | 是 | 应用名。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<void> | 无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = 'test_id';
let bundleName: string = 'test_bundleName';
try {
cloudData.Config.notifyDataChange(account, bundleName).then(() => {
console.info('Succeeded in notifying the change of data');
}).catch((err: BusinessError) => {
console.error(`Failed to notify the change of data. Code: ${err.code}, message: ${err.message}`);
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### notifyDataChange11+
**static** notifyDataChange(extInfo: ExtraData, callback: AsyncCallback<void>):void
通知云端的数据变更,可以通过extInfo中的extraData字段指定变更的数据库名和表名,使用callback异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | --------------------------------------- |
| extInfo | [ExtraData](#extradata11) | 是 | 透传数据,包含通知数据变更后的应用信息。 |
| callback | AsyncCallback<void> | 是 | 回调函数。当数据变更通知成功,err为undefined,否则为错误对象。|
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, which is usually returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let eventId: string = "cloud_data_change";
let extraData: string = '{"data":"{"accountId":"aaa","bundleName":"com.bbb.xxx","containerName":"alias", "databaseScopes": ["private", "shared"],"recordTypes":"["xxx","yyy","zzz"]"}"}';
try {
cloudData.Config.notifyDataChange({
eventId: eventId, extraData: extraData
}, (err: BusinessError) => {
if (err === undefined) {
console.info('Succeeded in notifying the change of data');
} else {
console.error(`Failed to notify the change of data. Code: ${err.code}, message: ${err.message}`);
}
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### notifyDataChange11+
static notifyDataChange(extInfo: ExtraData, userId: number,callback: AsyncCallback<void>):void
通知云端的数据变更,可以通过extInfo中的extraData字段指定变更的数据库名和表名,可通过userId指定用户ID,使用callback异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----------------------------------------------- |
| extInfo | [ExtraData](#extradata11) | 是 | 透传数据,包含通知数据变更后的应用信息。 |
| userId | number | 是 | 用户ID。对应为系统中现有的用户ID。 |
| callback | AsyncCallback<void> | 是 | 回调函数。当数据变更通知成功,err为undefined,否则为错误对象。|
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, which is usually returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let eventId: string = "cloud_data_change";
let extraData: string = '{"data":"{"accountId":"aaa","bundleName":"com.bbb.xxx","containerName":"alias", "databaseScopes": ["private", "shared"],"recordTypes":"["xxx","yyy","zzz"]"}"}';
let userId: number = 100;
try {
cloudData.Config.notifyDataChange({
eventId: eventId, extraData: extraData
}, userId, (err: BusinessError) => {
if (err === undefined) {
console.info('Succeeded in notifying the change of data');
} else {
console.error(`Failed to notify the change of data. Code: ${err.code}, message: ${err.message}`);
}
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### notifyDataChange11+
**static** notifyDataChange(extInfo: ExtraData, userId?: number): Promise<void>
通知云端的数据变更,可以通过extInfo中的extraData字段指定变更的数据库名和表名,可通过userId指定用户ID,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ----------------------- | ---- | ----------------------------------------------- |
| extInfo | [ExtraData](#extradata11) | 是 | 透传数据 包含通知数据变更后的应用信息。 |
| userId | number | 否 | 表示用户ID。此参数是可选的,默认值是当前用户ID,如果指定了此参数,则该值必须是系统中现有的用户ID。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<void> | 无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, which is usually returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let eventId: string = "cloud_data_change";
let extraData: string = '{"data":"{"accountId":"aaa","bundleName":"com.bbb.xxx","containerName":"alias", "databaseScopes": ["private", "shared"],"recordTypes":"["xxx","yyy","zzz"]"}"}';
let userId: number = 100;
try {
cloudData.Config.notifyDataChange({
eventId: eventId, extraData: extraData
}, userId).then(() => {
console.info('Succeeded in notifying the change of data');
}).catch((err: BusinessError) => {
console.error(`Failed to notify the change of data. Code: ${err.code}, message: ${err.message}`);
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### queryStatistics12+
static queryStatistics(accountId: string, bundleName: string, storeId?: string): Promise<Record<string, Array<StatisticInfo>>>
查询端云统计信息,返回未同步、已同步且端云信息一致和已同步且端云信息不一致的统计信息,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- |---------| ---- |-----------------------------------|
| accountId | string | 是 | 具体打开的云账号ID。 |
| bundleName | string | 是 | 应用包名。 |
| storeId | string | 否 | 数据库名称。默认值为空字符串,此时将查询当前应用所有的本地数据库。 |
**返回值:**
| 类型 | 说明 |
|--------------------------------------------------------------------------------------| ------------------------ |
| Promise<Record<string, Array<[StatisticInfo](#statisticinfo12)>>> | 返回表名以及统计信息结果集。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
const accountId:string = "accountId";
const bundleName:string = "bundleName";
const storeId:string = "storeId";
cloudData.Config.queryStatistics(accountId, bundleName, storeId).then((result) => {
console.info(`Succeeded in querying statistics. Info is ${JSON.stringify(result)}`);
}).catch((err: BusinessError) => {
console.error(`Failed to query statistics. Error code is ${err.code}, message is ${err.message}`);
});
```
### queryLastSyncInfo12+
static queryLastSyncInfo(accountId: string, bundleName: string, storeId?: string): Promise<Record>
查询上一次端云同步信息,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------ | ---- | ------------------------------------------------------------ |
| accountId | string | 是 | 具体打开的云账号ID。 |
| bundleName | string | 是 | 应用包名。 |
| storeId | string | 否 | 数据库名称。默认值为空字符串,此时查询当前应用下所有数据库上一次端云同步信息。 |
**返回值:**
| 类型 | 说明 |
| ------------------------------------------------------------ | -------------------------------------------- |
| Promise<Record<string, [SyncInfo](#syncinfo12)>> | 返回数据库名以及上一次端云同步的信息结果集。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
const accountId:string = "accountId";
const bundleName:string = "bundleName";
const storeId:string = "storeId";
try {
cloudData.Config.queryLastSyncInfo(accountId, bundleName, storeId).then((result) => {
console.info(`Succeeded in querying last syncinfo. Info is ${JSON.stringify(result)}`);
}).catch((err: BusinessError) => {
console.error(`Failed to query last syncinfo. Error code is ${err.code}, message is ${err.message}`);
});
} catch(e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### setGlobalCloudStrategy12+
static setGlobalCloudStrategy(strategy: StrategyType, param?: Array<commonType.ValueType>): Promise<void>
设置全局云同步策略,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- |------------------------------------------------------------------------| ---- |-------------------|
| strategy | [StrategyType](js-apis-data-cloudData.md#strategytype) | 是 | 配置的策略类型。 |
| param | Array<[commonType.ValueType](js-apis-data-commonType.md#valuetype)> | 否 | 策略参数。不填写默认为空,默认取消所有配置。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<void> | 无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.Config.setGlobalCloudStrategy(cloudData.StrategyType.NETWORK, [cloudData.NetWorkStrategy.WIFI]).then(() => {
console.info('Succeeded in setting the global cloud strategy');
}).catch((err: BusinessError) => {
console.error(`Failed to set global cloud strategy. Code: ${err.code}, message: ${err.message}`);
});
```
### clear
static clear(accountId: string, appActions: Record, callback: AsyncCallback<void>): void
清除本地下载的云端数据,使用callback异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | --------------------------------------------------- | ---- | -------------------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
| appActions | Record | 是 | 要清除数据的应用信息及清除规则。 |
| callback | AsyncCallback<void> | 是 | 回调函数。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = "test_id";
type dataType = Record
let appActions: dataType = {
'test_bundleName1': cloudData.ClearAction.CLEAR_CLOUD_INFO,
'test_bundleName2': cloudData.ClearAction.CLEAR_CLOUD_DATA_AND_INFO
};
try {
cloudData.Config.clear(account, appActions, (err: BusinessError) => {
if (err === undefined) {
console.info('Succeeding in clearing cloud data');
} else {
console.error(`Failed to clear cloud data. Code: ${err.code}, message: ${err.message}`);
}
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
### clear
static clear(accountId: string, appActions: Record): Promise<void>
清除本地下载的云端数据,使用Promise异步回调。
**需要权限**:ohos.permission.CLOUDDATA_CONFIG
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | --------------------------------------------------- | ---- | -------------------------------- |
| accountId | string | 是 | 具体打开的云账号ID。 |
| appActions | Record | 是 | 要清除数据的应用信息及清除规则。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<void> | 无返回结果的Promise对象。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 201 | Permission verification failed, usually the result returned by VerifyAccessToken.|
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let account: string = "test_id";
type dataType = Record;
let appActions: dataType = {
'test_bundleName1': cloudData.ClearAction.CLEAR_CLOUD_INFO,
'test_bundleName2': cloudData.ClearAction.CLEAR_CLOUD_DATA_AND_INFO
};
try {
cloudData.Config.clear(account, appActions).then(() => {
console.info('Succeeding in clearing cloud data');
}).catch((err: BusinessError) => {
console.error(`Failed to clear cloud data. Code: ${err.code}, message: ${err.message}`);
});
} catch (e) {
let error = e as BusinessError;
console.error(`An unexpected error occurred. Code: ${error.code}, message: ${error.message}`);
}
```
## sharing11+
提供端云共享的方法,包括发起共享、取消共享、退出共享、更改共享数据权限、查找共享参与者、确认邀请、更改已确认的邀请、查找共享资源。
### Role11+
端云共享参与者的角色。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
| 名称 | 值 | 说明 |
| --------------| ---- | ---------------------------------- |
| ROLE_INVITER | 0 | 端云共享邀请者。请使用枚举名称而非枚举值。 |
| ROLE_INVITEE | 1 | 端云共享被邀请者。请使用枚举名称而非枚举值。 |
### State11+
端云共享状态。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
| 名称 | 值 | 说明 |
| --------------| ---- | ---------------------------------- |
| STATE_UNKNOWN | 0 | 未知状态。请使用枚举名称而非枚举值。 |
| STATE_ACCEPTED | 1 | 端云共享已接受。请使用枚举名称而非枚举值。 |
| STATE_REJECTED | 2 | 端云共享被拒绝。请使用枚举名称而非枚举值。 |
| STATE_SUSPENDED | 3 | 端云共享被暂时挂起,未作处理。请使用枚举名称而非枚举值。 |
| STATE_UNAVAILABLE12+ | 4 | 端云共享不可用。请使用枚举名称而非枚举值。 |
### SharingCode11+
端云共享错误码。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
| 名称 | 值 | 说明 |
| --------------| ---- | ---------------------------------- |
| SUCCESS | 0 | 成功。请使用枚举名称而非枚举值。 |
| REPEATED_REQUEST | 1 | 重复邀请,表示当前参与者已被邀请。请使用枚举名称而非枚举值。 |
| NOT_INVITER | 2 | 非端云共享的邀请者,表示当前参与者不是端云共享的邀请者。请使用枚举名称而非枚举值。 |
| NOT_INVITER_OR_INVITEE | 3 | 非法参与者,表示当前参与者既不是共享的邀请者,也不是共享的被邀请者。请使用枚举名称而非枚举值。 |
| OVER_QUOTA | 4 | 端云共享次数达到上限,表示当前账号可共享的次数达到上限。请使用枚举名称而非枚举值。 |
| TOO_MANY_PARTICIPANTS | 5 | 端云共享参与者数量达到上限。请使用枚举名称而非枚举值。 |
| INVALID_ARGS | 6 | 无效的参数。请使用枚举名称而非枚举值。 |
| NETWORK_ERROR | 7 | 网络错误。请使用枚举名称而非枚举值。 |
| CLOUD_DISABLED | 8 | 云开关未打开。请使用枚举名称而非枚举值。 |
| SERVER_ERROR | 9 | 服务端发生错误。请使用枚举名称而非枚举值。 |
| INNER_ERROR | 10 | 系统发生内部错误。请使用枚举名称而非枚举值。 |
| INVALID_INVITATION | 11 | 无效的邀请,表示当前邀请已失效或不存在。请使用枚举名称而非枚举值。 |
| RATE_LIMIT | 12 | 速率限制,表示单次同步的数据量达到上限。请使用枚举名称而非枚举值。 |
| CUSTOM_ERROR | 1000 | 定制错误,小于该枚举值的错误码用于定义系统内部的标准错误码,大于该枚举值的错误码用于使用者自定义错误码。请使用枚举名称而非枚举值。 |
### Result<T>11+
端云共享结果的返回值。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
| 名称 | 类型 | 必填 | 说明 |
| ----------- | --------------------------- | --- | ------------ |
| code | number | 是 | 错误码。 |
| description | string | 否 | 错误码详细描述,默认为undefined。 |
| value | T | 否 | 返回结果的值,具体类型由参数T指定,默认为undefined。 |
### Privilege11+
指定的端云共享数据的权限。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
| 名称 | 类型 | 必填 | 说明 |
| ----------- | --------------------------- | --- | ------------ |
| writable | boolean | 否 | 被共享者是否可修改共享的数据。true表示可修改,false表示不可修改,默认不可修改。 |
| readable | boolean | 否 | 被共享者是否可读取共享的数据。true表示可读取,false表示不可读取,默认不可读取。 |
| creatable | boolean | 否 | 被共享者是否可创建新的共享数据。true表示可创建,false表示不可创建,默认不可创建。 |
| deletable | boolean | 否 | 被共享者是否可删除共享的数据。true表示可删除,false表示不可删除,默认不可删除。 |
| shareable | boolean | 否 | 被共享者是否可将共享的数据再次共享给其他参与者。true表示可再次共享,false表示不可再次共享,默认不可再次共享。 |
### Participant11+
端云共享的参与者。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
| 名称 | 类型 | 必填 | 说明 |
| ----------- | --------------------------- | --- | ------------ |
| identity | string | 是 | 参与者的ID。 |
| role | [Role](#role11) | 否 | 参与者的角色,为邀请者或被邀请者。默认为undefined。 |
| state | [State](#state11) | 否 | 共享的状态。默认为undefined。 |
| privilege | [Privilege](#privilege11) | 否 | 指定的共享数据权限。默认为[Privilege](#privilege11)的默认值。 |
| attachInfo | string | 否 | 附加信息,用于拓展额外的参与者信息。如用于参与者身份校验的校验码等,默认为空字符串。 |
### allocResourceAndShare11+
allocResourceAndShare(storeId: string, predicates: relationalStore.RdbPredicates, participants: Array<Participant>, columns?: Array<string>): Promise<relationalStore.ResultSet>
根据谓词条件匹配的数据申请共享资源标识并发起共享,返回已共享资源的结果集。如果指定了列字段,则返回的结果集中同时包含对应列的字段值,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| storeId | string | 是 | 数据库名称。 |
| predicates | [relationalStore.RdbPredicates](js-apis-data-relationalStore.md#rdbpredicates) | 是 | 表示查找共享资源标识的数据的谓词条件。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
| columns | Array<string> | 否 | 表示要查找的列字段名。默认为undefined,不返回列字段。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[relationalStore.ResultSet](js-apis-data-relationalStore.md#resultset)> | Promise对象,返回查询并共享的共享资源标识结果集。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
import { relationalStore } from '@kit.ArkData';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
let sharingResource: string;
let predicates = new relationalStore.RdbPredicates('test_table');
predicates.equalTo('data', 'data_test');
cloudData.sharing.allocResourceAndShare('storeName', predicates, participants, ['uuid', 'data']).then((resultSet) => {
if (!resultSet.goToFirstRow()) {
console.error(`row error`);
return;
}
const res = resultSet.getString(resultSet.getColumnIndex(relationalStore.Field.SHARING_RESOURCE_FIELD));
console.info(`sharing resource: ${res}`);
sharingResource = res;
}).catch((err: BusinessError) => {
console.error(`alloc resource and share failed, code is ${err.code},message is ${err.message}`);
})
```
### allocResourceAndShare11+
allocResourceAndShare(storeId: string, predicates: relationalStore.RdbPredicates, participants: Array<Participant>, columns: Array<string>, callback: AsyncCallback<relationalStore.ResultSet>): void
根据谓词条件匹配的数据申请共享资源标识并发起共享,返回已共享资源的结果集。并根据指定的列字段,返回的结果集中同时包含对应列的字段值,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| storeId | string | 是 | 数据库名称。 |
| predicates | [relationalStore.RdbPredicates](js-apis-data-relationalStore.md#rdbpredicates) | 是 | 表示查找共享资源标识的数据的谓词条件。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
| columns | Array<string> | 是 | 表示要查找的列字段名。 |
| callback | AsyncCallback<[relationalStore.ResultSet](js-apis-data-relationalStore.md#resultset)> | 是 | 回调函数。 返回查询并共享的共享资源标识结果集。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { relationalStore } from '@kit.ArkData';
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
let sharingResource: string;
let predicates = new relationalStore.RdbPredicates('test_table');
predicates.equalTo('data', 'data_test');
cloudData.sharing.allocResourceAndShare('storeName', predicates, participants, ['uuid', 'data'], (err: BusinessError, resultSet) => {
if (err) {
console.error(`alloc resource and share failed, code is ${err.code},message is ${err.message}`);
return;
}
if (!resultSet.goToFirstRow()) {
console.error(`row error`);
return;
}
const res = resultSet.getString(resultSet.getColumnIndex(relationalStore.Field.SHARING_RESOURCE_FIELD));
console.info(`sharing resource: ${res}`);
sharingResource = res;
})
```
### allocResourceAndShare11+
allocResourceAndShare(storeId: string, predicates: relationalStore.RdbPredicates, participants: Array<Participant>, callback: AsyncCallback<relationalStore.ResultSet>): void
根据谓词条件匹配的数据申请共享资源标识并发起共享,返回已共享资源的结果集,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| storeId | string | 是 | 数据库名称。 |
| predicates | [relationalStore.RdbPredicates](js-apis-data-relationalStore.md#rdbpredicates) | 是 | 表示查找共享资源标识的数据的谓词条件。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
| callback | AsyncCallback<[relationalStore.ResultSet](js-apis-data-relationalStore.md#resultset)> | 是 | 回调函数。返回查询并共享的共享资源标识结果集。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { relationalStore } from '@kit.ArkData';
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
let sharingResource: string;
let predicates = new relationalStore.RdbPredicates('test_table');
predicates.equalTo('data', 'data_test');
cloudData.sharing.allocResourceAndShare('storeName', predicates, participants, (err: BusinessError, resultSet) => {
if (err) {
console.error(`alloc resource and share failed, code is ${err.code},message is ${err.message}`);
return;
}
if (!resultSet.goToFirstRow()) {
console.error(`row error`);
return;
}
const res = resultSet.getString(resultSet.getColumnIndex(relationalStore.Field.SHARING_RESOURCE_FIELD));
console.info(`sharing resource: ${res}`);
sharingResource = res;
})
```
### share11+
share(sharingResource: string, participants: Array<Participant>): Promise<Result<Array<Result<Participant>>>>
根据指定的共享资源标识和共享参与者发起共享邀请,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<Array<[Result](#resultt11)<[Participant](#participant11)>>>> | Promise对象,返回端云共享的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
cloudData.sharing.share('sharing_resource_test', participants).then((result) => {
console.info(`share success, result: ${result}`);
}).catch((err: BusinessError) => {
console.error(`share failed, code is ${err.code},message is ${err.message}`);
})
```
### share11+
share(sharingResource: string, participants: Array<Participant>, callback: AsyncCallback<Result<Array<Result<Participant>>>>): void
根据指定的共享资源标识和共享参与者发起共享邀请,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
| callback | AsyncCallback<[Result](#resultt11)<Array<[Result](#resultt11)<[Participant](#participant11)>>>> | 是 | 回调函数。返回端云共享的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
cloudData.sharing.share('sharing_resource_test', participants, ((err: BusinessError, result) => {
if (err) {
console.error(`share failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`share succeeded, result: ${result}`);
}))
```
### unshare11+
unshare(sharingResource: string, participants: Array<Participant>): Promise<Result<Array<Result<Participant>>>>
根据指定的共享资源标识和共享参与者取消共享,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<Array<[Result](#resultt11)<[Participant](#participant11)>>>> | Promise对象,返回取消共享的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
cloudData.sharing.unshare('sharing_resource_test', participants).then((result) => {
console.info(`unshare succeeded, result: ${result}`);
}).catch((err: BusinessError) => {
console.error(`unshare failed, code is ${err.code},message is ${err.message}`);
})
```
### unshare11+
unshare(sharingResource: string, participants: Array<Participant>, callback: AsyncCallback<Result<Array<Result<Participant>>>>): void
根据指定的共享资源标识和共享参与者取消共享,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 共享数据的资源标志。 |
| participants | Array<[Participant](#participant11)> | 是 | 共享参与者。 |
| callback | AsyncCallback<[Result](#resultt11)<Array<[Result](#resultt11)<[Participant](#participant11)>>>> | 是 | 回调函数。返回取消共享的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
cloudData.sharing.unshare('sharing_resource_test', participants, ((err: BusinessError, result) => {
if (err) {
console.error(`unshare failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`unshare succeeded, result: ${result}`);
}))
```
### exit11+
exit(sharingResource: string): Promise<Result<void>>
根据指定的共享资源标识退出共享,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<void>> | Promise对象,返回退出端云共享的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.exit('sharing_resource_test').then((result) => {
console.info(`exit share success, result: ${result}`);
}).catch((err: BusinessError) => {
console.error(`exit share failed, code is ${err.code},message is ${err.message}`);
})
```
### exit11+
exit(sharingResource: string, callback: AsyncCallback<Result<void>>): void
根据指定的共享资源标识退出共享,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| callback | AsyncCallback<[Result](#resultt11)<void>> | 是 | 回调函数。返回退出共享的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.exit('sharing_resource_test', ((err: BusinessError, result) => {
if (err) {
console.error(`exit share failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`exit share succeeded, result: ${result}`);
}))
```
### changePrivilege11+
changePrivilege(sharingResource: string, participants: Array<Participant>): Promise<Result<Array<Result<Participant>>>>
根据指定的共享资源标识更改共享参与者对共享数据的操作权限,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<Array<[Result](#resultt11)<[Participant](#participant11)>>>> | Promise对象,返回更改共享参与者权限的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
cloudData.sharing.changePrivilege('sharing_resource_test', participants).then((result) => {
console.info(`change privilege succeeded, result: ${result}`);
}).catch((err: BusinessError) => {
console.error(`change privilege failed, code is ${err.code},message is ${err.message}`);
})
```
### changePrivilege11+
changePrivilege(sharingResource: string, participants: Array<Participant>, callback: AsyncCallback<Result<Array<Result<Participant>>>>): void
根据指定的共享资源标识更改共享参与者对共享数据的操作权限,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| participants | Array<[Participant](#participant11)> | 是 | 端云共享的参与者。 |
| callback | callback: AsyncCallback<[Result](#resultt11)<Array<[Result](#resultt11)<[Participant](#participant11)>>>> | 是 | 回调函数。返回更改权限的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let participants = new Array();
participants.push({
identity: '000000000',
role: cloudData.sharing.Role.ROLE_INVITER,
state: cloudData.sharing.State.STATE_UNKNOWN,
privilege: {
writable: true,
readable: true,
creatable: false,
deletable: false,
shareable: false
},
attachInfo: ''
})
cloudData.sharing.changePrivilege('sharing_resource_test', participants, ((err: BusinessError, result) => {
if (err) {
console.error(`change privilege failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`change privilege succeeded, result: ${result}`);
}))
```
### queryParticipants11+
queryParticipants(sharingResource: string): Promise<Result<Array<Participant>>>
根据指定的共享资源标识查询当前共享的参与者,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<Array<[Participant](#participant11)>>> | Promise对象,返回查询共享参与者的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.queryParticipants('sharing_resource_test').then((result) => {
console.info(`query participants succeeded, result: ${result}`);
}).catch((err: BusinessError) => {
console.error(`query participants failed, code is ${err.code},message is ${err.message}`);
})
```
### queryParticipants11+
queryParticipants(sharingResource: string, callback: AsyncCallback<Result<Array<Participant>>>): void
根据指定的共享资源标识查询当前共享的参与者,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| callback | AsyncCallback<[Result](#resultt11)<Array<[Participant](#participant11)>>> | 是 | 回调函数。返回查找共享参与者的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.queryParticipants('sharing_resource_test', ((err: BusinessError, result) => {
if (err) {
console.error(`query participants failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`query participants succeeded, result: ${result}`);
}))
```
### queryParticipantsByInvitation11+
queryParticipantsByInvitation(invitationCode: string): Promise<Result<Array<Participant>>>
根据指定的共享邀请码查询当前共享的参与者,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| invitationCode | string | 是 | 端云共享的邀请码。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<Array<[Participant](#participant11)>>> | Promise对象,返回查找共享参与者的结果。|
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.queryParticipantsByInvitation('sharing_invitation_code_test').then((result) => {
console.info(`query participants by invitation succeeded, result: ${result}`);
}).catch((err: BusinessError) => {
console.error(`query participants by invitation failed, code is ${err.code},message is ${err.message}`);
})
```
### queryParticipantsByInvitation11+
queryParticipantsByInvitation(invitationCode: string, callback: AsyncCallback<Result<Array<Participant>>>): void
根据指定的共享邀请码查询当前共享的参与者,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| invitationCode | string | 是 | 端云共享的邀请码。 |
| callback | AsyncCallback<[Result](#resultt11)<Array<[Participant](#participant11)>>> | 是 | 回调函数。返回查找共享参与者的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.queryParticipantsByInvitation('sharing_invitation_code_test', ((err: BusinessError, result) => {
if (err) {
console.error(`query participants by invitation failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`query participants by invitation succeeded, result: ${result}`);
}))
```
### confirmInvitation11+
confirmInvitation(invitationCode: string, state: State): Promise<Result<string>>
被邀请者根据共享邀请码确认当前邀请,并获取当前邀请的共享资源标识,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| invitationCode | string | 是 | 端云共享的邀请码。 |
| state | [State](#state11) | 是 | 确认邀请的状态。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<string>> | Promise对象,返回确认共享邀请的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let shareResource: string | undefined;
cloudData.sharing.confirmInvitation('sharing_invitation_code_test', cloudData.sharing.State.STATE_ACCEPTED).then((result: cloudData.sharing.Result) => {
console.info(`confirm invitation succeeded, result: ${result}`);
shareResource = result.value;
}).catch((err: BusinessError) => {
console.error(`confirm invitation failed, code is ${err.code},message is ${err.message}`);
})
```
### confirmInvitation11+
confirmInvitation(invitationCode: string, state: State, callback: AsyncCallback<Result<string>>): void
被邀请者根据共享邀请码确认当前邀请,并获取当前邀请的共享资源标识,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| invitationCode | string | 是 | 端云共享的邀请码。 |
| state | [State](#state11) | 是 | 确认邀请的状态。 |
| callback | AsyncCallback<[Result](#resultt11)<string>> | 是 | 回调函数。返回确认邀请的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
let shareResource: string;
cloudData.sharing.confirmInvitation('sharing_invitation_code_test', cloudData.sharing.State.STATE_ACCEPTED, ((err: BusinessError, result) => {
if (err) {
console.error(`confirm invitation failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`confirm invitation succeeded, result: ${result}`);
shareResource = result.value;
}))
```
### changeConfirmation11+
changeConfirmation(sharingResource: string, state: State): Promise<Result<void>>
根据共享资源标识更改共享邀请的状态,使用Promise异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| state | [State](#state11) | 是 | 更改邀请的状态。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise<[Result](#resultt11)<void>> | Promise对象,返回更改共享邀请状态的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.changeConfirmation('sharing_resource_test', cloudData.sharing.State.STATE_REJECTED).then((result) => {
console.info(`change confirmation succeeded, result: ${result}`);
}).catch((err: BusinessError) => {
console.error(`change confirmation failed, code is ${err.code},message is ${err.message}`);
})
```
### changeConfirmation11+
changeConfirmation(sharingResource: string, state: State, callback: AsyncCallback<Result<void>>): void;
根据共享资源标识更改共享邀请的状态,使用callback异步回调。
**系统能力:** SystemCapability.DistributedDataManager.CloudSync.Client
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| sharingResource | string | 是 | 端云共享数据的资源标识。 |
| state | [State](#state11) | 是 | 更改邀请的状态。 |
| callback | AsyncCallback<[Result](#resultt11)<void>> | 是 | 回调函数。返回更改邀请状态的结果。 |
**错误码:**
以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)。
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------------------- |
| 202 | Permission verification failed, application which is not a system application uses system API.|
| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed.|
| 801 | Capability not supported.|
**示例:**
```ts
import { BusinessError } from '@kit.BasicServicesKit';
cloudData.sharing.changeConfirmation('sharing_resource_test', cloudData.sharing.State.STATE_REJECTED, ((err: BusinessError, result) => {
if (err) {
console.error(`change confirmation failed, code is ${err.code},message is ${err.message}`);
return;
}
console.info(`change confirmation succeeded, result: ${result}`);
}))
```