OpenHarmony分布式软总线子系统

OpenHarmony分布式软总线子系统

简介

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

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

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

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

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

系统架构

图 1 分布式软总线子系统架构图

目录

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

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

约束

  • 组网限制:必须确保设备在同一个局域网中。

使用说明

进程间通信

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

  1. 实现服务端及其提供的能力。
  2. 请求服务的一端会建立一个服务提供端的代理对象,这个代理对象具备和服务提供端一样的功能,若想访问服务提供端中的某个方法,只需要访问代理对象中对应的方法即可。
  3. 服务提供端处理接收到的请求,处理完之后通过驱动返回处理结果给代理对象。
  4. 代理对象将请求结果进一步返回给请求服务端。

软总线

  • 组网
  1. 服务启动之后,获取已经在线的设备列表。
  2. 注册上下线监听,通过回调通知感知设备列表变化。
  3. 获取设备的Id、设备名称、设备类型。
  4. 获取指定设备的设备类型,组网类型,设备能力等更多信息。
  5. 进程退出时,删除上下线监听。
  • 传输
  1. 根据Socket名称,调用者包名等信息,创建Socket。
  2. 服务端启动监听,客户端进行绑定。
  3. 绑定成功,可发送数据。
  4. 待Socket不使用时,关闭Socket。

相关仓

分布式软总线子系统

communication_bluetooth

communication_dsoftbus

communication_ipc

communication_wifi

相关推荐
m0_7496902311 小时前
【寻迹校园 HarmonyOS NEXT 实战 16】Preferences 还是 RelationalStore:HarmonyOS 本地存储选型实战
华为·harmonyos·arkts·preferences·relationalstore
2501_9197490313 小时前
华为鸿蒙免费听歌APP—小羊免费听歌
华为·harmonyos·鸿蒙
OH_TPC14 小时前
HarmonyOS APP开发---"祝福圈"节日贺卡App,需要用到这个库
harmonyos
m0_7496902317 小时前
【寻迹校园 HarmonyOS NEXT 实战 31】举报去重怎么做:同一记录的重复投诉不应制造多条处理中案件
harmonyos·arkts·relationalstore·内容治理·举报去重
贾伟康18 小时前
【中国方言题库|11】HarmonyOS ArkTS 学习统计实战:计算地区学习进度与收藏数量
harmonyos·arkts·arkui·数据统计·多设备适配
用户12695508791418 小时前
RK3588 + OpenHarmony 6.1 RKNN2 NPU 验证指南
harmonyos
m0_7496902319 小时前
【寻迹校园 HarmonyOS NEXT 实战 35】先写全页面 Design Spec 再写 ArkUI:一个比赛项目的设计稿门禁实践
harmonyos·响应式设计·设计规范·arkui·ui设计
Magic-ZYJ19 小时前
HarmonyOS 日记类 App 的日期设计:本地自然日、月历与夏令时边界
华为·harmonyos·arkts·arkui·问题排查·移动端开发·独立开发者
贾伟康19 小时前
【中国方言题库|12】HarmonyOS ArkTS 题库列表组件实战:减少多地区页面重复并保证点击反馈
harmonyos·arkts·arkui·组件化·多设备适配