js-apis-file-cloudsyncmanager.md 4.9 KB
Newer Older
张文迪 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
# @ohos.file.cloudSyncManager (端云同步管理能力)

该模块向云空间提供通知或更改端云服务状态的能力。

> **说明:**
> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
> 本模块接口为系统接口,三方应用不支持调用。
> 本模块支持对错误码进行处理,错误码及其适配方式[参考文档](../errorcodes/errorcode-filemanagement.md#错误码适配指导)。

## 导入模块

```js
import cloudSyncManager from '@ohos.file.cloudSyncManager';
```

## cloudSyncManager.changeAppCloudSwitch

changeAppCloudSwitch(accountId: string, bundleName: string, status: boolean): Promise<void>;

异步方法修改应用的端云文件同步开关,以Promise形式返回结果。

**系统能力**:SystemCapability.FileManagement.DistributedFileService.CloudSyncManager

**参数:**

| 参数名     | 类型   | 必填 | 说明 |
| ---------- | ------ | ---- | ---- |
| accountId | string | 是   | 帐号|
| bundleName | string | 是   | 应用包名|
| status | boolean | 是   | 修改的应用云同步开关状态,true为打开,false为关闭|

**返回值:**

| 类型                  | 说明             |
| --------------------- | ---------------- |
| Promise<void> | 使用Promise形式返回修改应用的端云文件同步开关的结果 |

**示例:**

  ```js
  let accountId = "testAccount";
  let bundleName = "com.example.bundle";
  cloudSyncManager.changeAppCloudSwitch(accountId, bundleName, true).then(function() {
      console.info("changeAppCloudSwitch successfully");
  }).catch(function(err) {
      console.info("changeAppCloudSwitch failed with error message: " + err.message + ", error code: " + err.code);
  });
  ```

## cloudSyncManager.changeAppCloudSwitch

changeAppCloudSwitch(accountId: string, bundleName: string, status: boolean, callback: AsyncCallback<void>): void;

异步方法修改应用的端云文件同步开关,以callback形式返回结果。

**系统能力**:SystemCapability.FileManagement.DistributedFileService.CloudSyncManager

**参数:**

| 参数名     | 类型   | 必填 | 说明 |
| ---------- | ------ | ---- | ---- |
| accountId | string | 是   | 帐号|
| bundleName | string | 是   | 应用包名|
| status | boolean | 是   | 修改的应用云同步开关状态,true为打开,false为关闭|
| callback | AsyncCallback<void> | 是   | 异步修改应用的端云文件同步开关之后的回调 |

**示例:**

  ```js
  let accountId = "testAccount";
  let bundleName = "com.example.bundle";
  cloudSyncManager.changeAppCloudSwitch(accountId, bundleName, true, (err) => {
    if (err) {
      console.info("changeAppCloudSwitch failed with error message: " + err.message + ", error code: " + err.code);
    } else {
      console.info("changeAppCloudSwitch successfully");
    }
  });
  ```
## cloudSyncManager.notifyDataChange

notifyDataChange(accountId: string, bundleName: string): Promise<void>;

异步方法通知端云服务应用的云数据变更,以Promise形式返回结果。

**系统能力**:SystemCapability.FileManagement.DistributedFileService.CloudSyncManager

**参数:**

| 参数名     | 类型   | 必填 | 说明 |
| ---------- | ------ | ---- | ---- |
| accountId | string | 是   | 帐号|
| bundleName | string | 是   | 应用包名|

**返回值:**

| 类型                  | 说明             |
| --------------------- | ---------------- |
| Promise<void> | 使用Promise形式返回通知端云服务应用的云数据变更的结果 |

**示例:**

  ```js
  let accountId = "testAccount";
  let bundleName = "com.example.bundle";
  cloudSyncManager.notifyDataChange(accountId, bundleName).then(function() {
      console.info("notifyDataChange successfully");
  }).catch(function(err) {
      console.info("notifyDataChange failed with error message: " + err.message + ", error code: " + err.code);
  });
  ```

## cloudSyncManager.notifyDataChange

notifyDataChange(accountId: string, bundleName: string, callback: AsyncCallback<void>): void;

异步方法通知端云服务应用的云数据变更,以callback形式返回结果。

**系统能力**:SystemCapability.FileManagement.DistributedFileService.CloudSyncManager

**参数:**

| 参数名     | 类型   | 必填 | 说明 |
| ---------- | ------ | ---- | ---- |
| accountId | string | 是   | 帐号|
| bundleName | string | 是   | 应用包名|
| callback | AsyncCallback<void> | 是   | 异步通知端云服务应用的云数据变更之后的回调 |

**示例:**

  ```js
  let accountId = "testAccount";
  let bundleName = "com.example.bundle";
  cloudSyncManager.notifyDataChange(accountId, bundleName, (err) => {
    if (err) {
      console.info("notifyDataChange failed with error message: " + err.message + ", error code: " + err.code);
    } else {
      console.info("notifyDataChange successfully");
    }
  });
  ```