如果你也对鸿蒙开发感兴趣,加入“Harmony自习室”吧!扫描下方名片,关注公众号,公众号更新更快,同时也有更多学习资料和技术讨论群。
1、概 述
随着用户不同种类的终端设备数量不断增多,将不同设备作为本端设备能力的扩展,使设备之间协同合作完成各种复杂场景即为: 设备的分布式业务。
HarmonyOS分布式管理服务套件(Distributed Service Kit)实现了分布式设备管理、分布式硬件管理、分布式键鼠穿越等能力。我们可以通过分布式设备管理服务进行周边设备的发现、认证、信息查询、状态监听等。分布式设备管理提供如下四大功能:
-
【 发 现 】
发现周围终端设备并上报。周围设备需要连接同局域网或者同时打开蓝牙,可以根据设备类型、距离、设备是否可信等进行筛选。
-
【 绑 定 】
不同设备协同合作完成分布式业务的前提是设备间可信,对于周边发现的不可信设备,可通过绑定使彼此建立可信关系,提供pin码、碰、扫、靠等设备认证框架,支持对接各种认证交互接口。
-
【 查 询 】
查询功能包含:查询本机设备信息、查询周围的在线的可信设备、查询可信设备信息。
-
【 监 听 】
监听设备上、下线。设备上线表示设备间已经可信,业务可以发起分布式操作;设备下线表示分布业务不可用。
设备管理服务作为分布式业务入口,需要应用在所使用的业务场景,向发现设备主动发起绑定建立可信关系;业务结束后由业务自主判断是否解除绑定关系,设备间可信关系的解除由业务自己控制。
有一些问题需要注意:
-
使用设备管理能力时,需要用户确认不同设备已连接同一局域网或者蓝牙开关已开启,否则该能力不可用。
-
设备信息属于用户敏感数据,所以即使用户已连接同一局域网或者蓝牙开关已开启,应用在获取设备位置前仍需向用户申请数据同步权限。在用户确认允许后,系统才会向应用提供设备管理能力。
-
使用分布式设备管理,需要用户进行相关权限的申请。
2、权限申请
应用在使用分布式设备管理系统能力前,需要检查是否已经获取用户授权访问分布式数据同步信息。如未获得授权,可以向用户申请需要的分布式数据同步权限。ohos.permission.DISTRIBUTED_DATASYNC:分布式数据同步权限。
【使用设备管理能力,必须申请权限并且获得用户授权】
分布式数据同步权限申请分为以下两步:
👉🏻 step 1
在module.json5配置文件中配置分布式数据同步权限(ohos.permission.DISTRIBUTED_DATASYNC)示例如下:
{
"module" : {
"requestPermissions":[
{
"name" : "ohos.permission.DISTRIBUTED_DATASYNC",
"reason": "$string:distributed_permission",
"usedScene": {
"abilities": [