Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
04aefaa4
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看板
提交
04aefaa4
编写于
9月 08, 2022
作者:
W
wangkai
提交者:
Wangkai
9月 08, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fixed
09697771
from
https://gitee.com/wangkai0102/docs/pulls/9263
分布式数据服务开发步骤完善 Signed-off-by:
N
wangkai
<
wangkai424@huawei.com
>
上级
475a154f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
40 addition
and
6 deletion
+40
-6
zh-cn/application-dev/database/database-mdds-guidelines.md
zh-cn/application-dev/database/database-mdds-guidelines.md
+40
-6
未找到文件。
zh-cn/application-dev/database/database-mdds-guidelines.md
浏览文件 @
04aefaa4
...
...
@@ -33,8 +33,42 @@
```
js
import
distributedData
from
'
@ohos.data.distributedData
'
;
```
2.
请求权限(同步操作时进行该步骤)。
2.
根据配置构造分布式数据库管理类实例。
需要在
`config.json`
文件里进行配置请求权限(FA模型),示例代码如下:
```json
{
"module": {
"reqPermissions": [
{
"name": "ohos.permission.DISTRIBUTED_DATASYNC"
}
]
}
}
```
Stage模型下的权限请求请参见
[
权限声明-Stage模型
](
../security/accesstoken-guidelines.md#stage模型
)
。
这个权限还需要在应用首次启动的时候弹窗获取用户授权,可以通过如下代码实现:
```js
import featureAbility from '@ohos.ability.featureAbility';
function grantPermission() {
console.info('grantPermission');
let context = featureAbility.getContext();
context.requestPermissionsFromUser(['ohos.permission.DISTRIBUTED_DATASYNC'], 666, function (result) {
console.info(`result.requestCode=${result.requestCode}`)
})
console.info('end grantPermission');
}
grantPermission();
```
3.
根据配置构造分布式数据库管理类实例。
1.
根据应用上下文创建
`kvManagerConfig`
对象。
2.
创建分布式数据库管理器实例。
...
...
@@ -63,7 +97,7 @@
}
```
3
.
获取/创建分布式数据库。
4
.
获取/创建分布式数据库。
1.
声明需要创建的分布式数据库ID描述。
2.
创建分布式数据库,建议关闭自动同步功能(
`autoSync:false`
),需要同步时主动调用
`sync`
接口。
...
...
@@ -97,7 +131,7 @@
>
> 组网设备间同步数据的场景,建议在应用启动时打开分布式数据库,获取数据库的句柄。在该句柄(如示例中的`kvStore`)的生命周期内无需重复创建数据库,可直接使用句柄对数据库进行数据的插入等操作。
4
.
订阅分布式数据变化。
5
.
订阅分布式数据变化。
以下为订阅单版本分布式数据库数据变化通知的代码示例:
```
js
...
...
@@ -106,7 +140,7 @@
});
```
5
.
将数据写入分布式数据库。
6
.
将数据写入分布式数据库。
1.
构造需要写入分布式数据库的
`Key`
(键)和
`Value`
(值)。
2.
将键值数据写入分布式数据库。
...
...
@@ -129,7 +163,7 @@
}
```
6
.
查询分布式数据库数据。
7
.
查询分布式数据库数据。
1.
构造需要从单版本分布式数据库中查询的
`Key`
(键)。
2.
从单版本分布式数据库中获取数据。
...
...
@@ -154,7 +188,7 @@
}
```
7
.
同步数据到其他设备。
8
.
同步数据到其他设备。
选择同一组网环境下的设备以及同步模式,进行数据同步。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录