OpenHarmony分布式软总线子系统

举报
坚果派 发表于 2022/08/19 08:04:02 2022/08/19
【摘要】 分布式软总线子系统旨在为OpenHarmony系统提供的通信相关的能力,包括:WLAN服务能力、蓝牙服务能力、软总线、进程间通信RPC(Remote Procedure Call)等通信能力。代码目录结构分布式软总线子系统主要代码目录结构如下:/foundation/communication├── bluetooth # 蓝牙功能代码├── dsoftbus # ...



分布式软总线子系统旨在为OpenHarmony系统提供的通信相关的能力,包括:WLAN服务能力、蓝牙服务能力、软总线、进程间通信RPC(Remote Procedure Call)等通信能力。

代码目录结构

分布式软总线子系统主要代码目录结构如下:

/foundation/communication
├── bluetooth       # 蓝牙功能代码
├── dsoftbus        # 软总线功能代码
├── ipc             # 进程间通信代码
└── wifi            # WLAN功能代码

蓝牙服务

主要为应用提供传统蓝牙以及低功耗蓝牙相关功能和服务。

软总线

应用和系统提供近场设备间分布式通信的能力,提供不区分通信方式的设备发现,连接,组网和传输功能。

进程间通信

提供不区分设备内或设备间的进程间通信能力。

WLAN服务:

为用户提供WLAN基础功能、P2P(peer-to-peer)功能和WLAN消息通知的相应服务,让应用可以通过WLAN和其他设备互联互通。

使用说明

首先必须确保设备在同一个局域网中。

进程间通信

在使用RPC时,请求服务的一端进程可获取提供服务一端所在进程的代理 (Proxy),并通过此代理读写数据来实现进程间的数据通信,主要有四步:

  1. 实现服务端及其提供的能力。

  2. 请求服务的一端会建立一个服务提供端的代理对象,这个代理对象具备和服务提供端一样的功能,若想访问服务提供端中的某个方法,只需要访问代理对象中对应的方法即可。

  3. 服务提供端处理接收到的请求,处理完之后通过驱动返回处理结果给代理对象。

  4. 代理对象将请求结果进一步返回给请求服务端。

软总线

组网

  1. 服务启动之后,获取已经在线的设备列表。

  2. 注册上下线监听,通过回调通知感知设备列表变化。

  3. 获取设备的Id、设备名称、设备类型。

  4. 获取指定设备的设备类型,组网类型,设备能力等更多信息。

  5. 进程退出时,删除上下线监听。

传输

  1. 创建会话服务并注册监听回调函数。

  2. 待组网设备上线后,建立与指定设备的会话。

  3. 若会话获取成功,可发送数据。

  4. 待会话不使用时,关闭已打开的会话通道。

  5. 业务明确不使用分布式传输(如进程退出)时,移除已创建的会话服务。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。