Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
319fb2d9
D
Docs
项目概览
OpenHarmony
/
Docs
大约 1 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
319fb2d9
编写于
5月 12, 2023
作者:
Y
ylq121
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: add cloudSync doc
Signed-off-by:
N
ylq121
<
yangqing89@huawei.com
>
上级
f252fcba
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
392 addition
and
0 deletion
+392
-0
zh-cn/application-dev/reference/apis/js-apis-data-cloudData.md
.../application-dev/reference/apis/js-apis-data-cloudData.md
+392
-0
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-data-cloudData.md
0 → 100644
浏览文件 @
319fb2d9
# @ohos.data.cloudData (端云协同)
端云协同提供结构化数据(RDB Store)端云同步的能力。即:云作为数据的中心节点,通过与云的数据同步,实现数据云备份、同账号设备间的数据一致性。
该模块提供以下端云协同相关的常用功能:
-
[
Config
](
#config
)
:提供配置端云协同信息的相关方法,包括云同步打开、关闭、清理数据、账号状态变更处理。
> **说明:**
>
> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
## 导入模块
```
js
import
ddm
from
'
@ohos.data.cloudData
'
;
```
## Action
清除本地数据云信息的行为枚举。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
| 名称 | 说明 |
| --------- | ---------------------------- |
| CLEAR_CLOUD_INFO | 清除仅云相关,保留本地缓存数据,包括:纯云端的元数据、有本地文件云相关数据。 |
| CLEAR_CLOUD_DATA_AND_INFO |清除所有云相关文件数据,已同步云端的文件数据。 |
## Config
提供配置端云协同信息的相关方法,包括云同步打开、关闭、清理数据、账号状态变更处理。
### enableCloud
static enableCloud(accountId: string, switches: {[bundleName: string]: boolean}, callback: AsyncCallback
<
void
>
):
<
void
>
打开端云协同,使用callback异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| switches | {[bundleName: string]: boolean} | 是 | 各应用的端云协同开关信息。 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
switches
=
{
"
test_bundleName1
"
:
true
,
"
test_bundleName2
"
:
false
};
try
{
await
ddm
.
Config
.
enableCloud
(
account
,
function
(
err
,
data
)
{
if
(
err
==
undefined
)
{
console
.
info
(
'
Succeeding in enabling cloud
'
);
}
else
{
console
.
error
(
'
Failed to enable
'
+
`, error code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
}
done
();
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### enableCloud
static enableCloud(accountId: string, switches: {[bundleName: string]: boolean}): Promise
<
void
>
打开端云协同,使用Promise异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| switches | {[bundleName: string]: boolean} | 是 | 各应用的端云协同开关信息。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
switches
=
{
"
test_bundleName1
"
:
true
,
"
test_bundleName2
"
:
false
};
try
{
await
ddm
.
Config
.
enableCloud
(
account
).
then
((
data
)
=>
{
console
.
info
(
'
Succeeding in enabling cloud
'
);
}).
catch
((
error
)
=>
{
console
.
error
(
'
Failed to enable
'
+
`, error code is
${
error
.
code
}
, message is
${
error
.
message
}
`
);
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### disableCloud
static disableCloud(accountId: string, callback: AsyncCallback
<
void
>
):
<
void
>
关闭端云协同,使用callback异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
try
{
await
ddm
.
Config
.
disableCloud
(
account
,
function
(
err
,
data
)
{
if
(
err
==
undefined
)
{
console
.
info
(
'
Succeeding in disabling cloud
'
);
}
else
{
console
.
error
(
'
Failed to disableCloud
'
+
`, error code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
}
done
();
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### disableCloud
static disableCloud(accountId: string): Promise
<
void
>
关闭端云协同,使用Promise异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
switches
=
{
"
test_bundleName1
"
:
true
,
"
test_bundleName2
"
:
false
};
try
{
await
ddm
.
Config
.
disableCloud
(
account
).
then
((
data
)
=>
{
console
.
info
(
'
Succeeding in disabling cloud
'
);
}).
catch
((
error
)
=>
{
console
.
error
(
'
Failed to disableCloud
'
+
`, error code is
${
error
.
code
}
, message is
${
error
.
message
}
`
);
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### changeAppCloudSwitch
static changeAppCloudSwitch(accountId: string,bundleName:string,status:boolean, callback: AsyncCallback
<
void
>
):
<
void
>
修改单个应用端云协同开关,使用callback异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| bundleName| string | 是 | 应用名 |
| status | boolean | 是 | 应用的端云协同开关状态信息。 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
bundleName
=
"
test_bundleName
"
;
try
{
await
ddm
.
Config
.
changeAppCloudSwitch
(
account
,
bundleName
,
true
,
function
(
err
,
data
)
{
if
(
err
==
undefined
)
{
console
.
info
(
'
Succeeding in changing App cloud switch
'
);
}
else
{
console
.
error
(
'
Failed to change App cloud switch
'
+
`, error code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
}
done
();
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### changeAppCloudSwitch
static changeAppCloudSwitch(accountId: string,bundleName:string,status:boolean): Promise
<
void
>
修改单个应用端云协同开关,使用Promise异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| bundleName| string | 是 | 应用名 |
| status | boolean | 是 | 应用的端云协同开关状态信息。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
bundleName
=
"
test_bundleName
"
;
try
{
await
ddm
.
Config
.
changeAppCloudSwitch
(
account
,
bundleName
,
true
).
then
((
data
)
=>
{
console
.
info
(
'
Succeeding in changing App cloud switch
'
);
}).
catch
((
error
)
=>
{
console
.
error
(
'
Failed to change App cloud switch
'
+
`, error code is
${
error
.
code
}
, message is
${
error
.
message
}
`
);
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### clean
static clean(accountId: string, appActions: {[bundleName: string]: Action}, callback: AsyncCallback
<
void
>
):
<
void
>
清除本地数据中云信息,使用callback异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ----------------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| appActions | {
[
bundleName: string]: [Action
](
#Action
)
} | 是 | 要清除数据的应用信息 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
appActions
=
{
"
test_bundleName1
"
:
con
.
CLEAR_CLOUD_INFO
,
"
test_bundleName2
"
:
con
.
CLEAR_CLOUD_DATA_AND_INFO
}
try
{
await
ddm
.
Config
.
clean
(
account
,
appActions
,
function
(
err
,
data
)
{
if
(
err
==
undefined
)
{
console
.
info
(
'
Succeeding in cleaning cloud data
'
);
}
else
{
console
.
error
(
'
Failed to clean
'
+
`, error code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
}
done
();
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### clean
static clean(accountId: string, appActions: {[bundleName: string]: Action}): Promise
<
void
>
清除本地数据中云信息,使用Promise异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ----------------------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| appActions | {
[
bundleName: string]: [Action
](
#Action
)
} | 是 | 要清除数据的应用信息 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
appActions
=
{
"
test_bundleName1
"
:
con
.
CLEAR_CLOUD_INFO
,
"
test_bundleName2
"
:
con
.
CLEAR_CLOUD_DATA_AND_INFO
}
try
{
await
ddm
.
Config
.
clean
(
account
,
appActions
).
then
((
data
)
=>
{
console
.
info
(
'
Succeeding in cleaning cloud data
'
);
}).
catch
((
error
)
=>
{
console
.
error
(
'
Failed to clean
'
+
`, error code is
${
error
.
code
}
, message is
${
error
.
message
}
`
);
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### notifyDataChange
static notifyDataChange(accountId: string,bundleName:string, callback: AsyncCallback
<
void
>
):
<
void
>
通知云端的数据变更,使用callback异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------- | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| bundleName | string | 是 | 应用名 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
bundleName
=
"
test_bundleName
"
;
try
{
await
ddm
.
Config
.
notifyDataChange
(
account
,
bundleName
,
function
(
err
,
data
)
{
if
(
err
==
undefined
)
{
console
.
info
(
'
Succeeding in notifying the change of data
'
);
}
else
{
console
.
error
(
'
Failed to notify the change of data
'
+
`, error code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
}
done
();
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
### notifyDataChange
static notifyDataChange(accountId: string,bundleName:string): Promise
<
void
>
通知云端的数据变更,使用Promise异步回调。
**系统能力:**
SystemCapability.DistributedDataManager.CloudSync.Config
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------ | ---- | ---------------------------- |
| accountId | string | 是 | 具体打开的云信息hash后的ID。 |
| bundleName | string | 是 | 应用名 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。 |
**示例:**
```
js
let
account
=
"
test_id
"
;
let
bundleName
=
"
test_bundleName
"
;
try
{
await
ddm
.
Config
.
notifyDataChange
(
account
,
bundleName
).
then
((
data
)
=>
{
console
.
info
(
'
Succeeding in notifying the change of data
'
);
}).
catch
((
error
)
=>
{
console
.
error
(
'
Failed to notify the change of data
'
+
`, error code is
${
error
.
code
}
, message is
${
error
.
message
}
`
);
});
}
catch
(
e
)
{
console
.
error
(
'
An unexpected error occurred.
'
+
`, error code is
${
e
.
code
}
, message is
${
e
.
message
}
`
);
}
```
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录