OpenHarmony南向开发:分布式软总线-softbus_tool使用规范

news2024/9/22 4:14:33

oftbus_tool 是 OpenHarmony 分布式软总线 API 调用测试工具,文件结构如下图所示。

softbus_tool 能够将软总线 interfaces 目录下的一些常用接口集中起来,供设备间搭建一些场景时使用(比如设备绑定、BR 组网,BLE 组网, 指定 P2P 链路传输等)。

image.png

softbus_tool 一般的使用流程为:

1.使用编译命令生成可执行文件;

2.将生成的可执行文件推送到设备;

3.在 hdc shell 界面执行,会显示 Softbus Tool Command List 命令列表,选择接口前面的序号即可执行相应的接口,有些接口在执行时,需要用户输入参数来实现不同的场景, 这些在下文演示部分做了示例。

下面我们来看一下具体的使用流程。


编译说明

1.将 softbus_tool 目录代码下载到本地,拷贝到 OpenHarmony 源码 \foundation\communication\dsoftbus\tools路径 下

2.L2 修改步骤:

在  \foundation 下添加:

修改前为:deps = [ ":SoftBusDumpDeviceInfo" ]

修改后为:deps = [ ":SoftBusDumpDeviceInfo", "softbus_tool:softbus_tool" ]

3.单编 softbus_tool 编译命令:

RK3568:/build.sh --product-name rk3568 --ccache --build-target softbus

4.编译结果输出路径为:

/out/rk3568/communication/dsoftbus/

使用流程

1.绑定

设备间在组网前,需要绑定,绑定成功才可以进行后续组网,传输功能。

1.启动 A,B 两端设备,打开设置->WLAN,连接同一 WiFi;

2.A 端打开计算器,点击右上角“向上 →”图标,B 端设备上会弹出 6 位数字的验证图片;

3.在 A 端输入 6 位验证码;

4.绑定成功;

2.执行 softbus_tool 程序

出现如下图,即为执行成功。

3.WiFi 组网

确认 A,B 两端设备均已打开 wifi 开关,且已连接同一 WiFi 网络。

  1. A 端执行 0 - PublishService,发布服务。
  2. B 端执行 2 - StartDiscovery,订阅服务。
  3. B 端执行 4 - JoinLNN,组网。

image.png

4.WiFi 退网
  1. A 端(或 B 端)执行 6 - GetLocalDeviceInfo,查看本端 NetworkId 值。
  2. B 端(或 A 端)执行 5 - LeaveLNN,退网。

5.File 传输指定 p2p 链路

开始传输前,设备间需要 WiFi 组网成功。

  1. A 端执行 14 - CreateSessionServer,创建会话服务。
  2. B 端执行 14 - CreateSessionServer,创建会话服务。

image.png

  1. A 端(或 B 端)选择为文件发送端,执行 18 - SetFileSendListener, 注册文件发送监听。
  2. B 端(或 A 端)选择为文件接收端,执行 19 - SetFileRecvListener, 注册文件接收监听。

image.png

  • B 端(或 A 端)执行 6 - GetLocalDeviceInfo,查看本端 NetworkId 值。

  • A 端(或 B 端)执行 16 - OpenSession,打开会话。

  • A 端(或 B 端)执行 23 - SendFile,发送文件。

image.png

image.png

  • A 端(或 B 端)执行 17 - CloseSession,关闭会话。

  1. A 端执行 15 - RemoveSessionServer,删除会话服务。
  2. B 端执行 15 - RemoveSessionServer,删除会话服务。

最后

小编在之前的鸿蒙系统扫盲中,有很多朋友给我留言,不同的角度的问了一些问题,我明显感觉到一点,那就是许多人参与鸿蒙开发,但是又不知道从哪里下手,因为资料太多,太杂,教授的人也多,无从选择。有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(HarmonyOS NEXT)资料用来跟着学习是非常有必要的。 

为了确保高效学习,建议规划清晰的学习路线,涵盖以下关键阶段:

希望这一份鸿蒙学习资料能够给大家带来帮助~


 鸿蒙(HarmonyOS NEXT)最新学习路线

该路线图包含基础技能、就业必备技能、多媒体技术、六大电商APP、进阶高级技能、实战就业级设备开发,不仅补充了华为官网未涉及的解决方案

路线图适合人群:

IT开发人员:想要拓展职业边界
零基础小白:鸿蒙爱好者,希望从0到1学习,增加一项技能。
技术提升/进阶跳槽:发展瓶颈期,提升职场竞争力,快速掌握鸿蒙技术

2.视频学习资料+学习PDF文档

(鸿蒙语法ArkTS、TypeScript、ArkUI教程……)

 纯血版鸿蒙全套学习资料(面试、文档、全套视频等)

                   

鸿蒙APP开发必备

​​

总结

参与鸿蒙开发,你要先认清适合你的方向,如果是想从事鸿蒙应用开发方向的话,可以参考本文的学习路径,简单来说就是:为了确保高效学习,建议规划清晰的学习路线

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2085209.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

oracle的BITAND()函数用法

BITAND函数是计算两个数据的按位与 如下: 0010 0101 的按位与结果是0000 转为2进制就是0 0010 0011 的按位与结果是0010 转为2进制就是2

linux本地库迁移到阿里云云redis

背景 领导要我把另外一个不同账号的云redis进行同步 想法 阿里云不能直接备份还原redis,需要把备份文件先给搞到本地redis,然后本地redis进行同步到云redis 大概的逻辑是这样 实操 我这里下载的版本是4.0.2,文件如下: redis-shake-linux-amd64.tar.gz github下…

独立站除了Shopify还有什么?

国外电商平台仅占40-50%的市场份额。独立网站具有巨大的潜力。通过建立独立的跨境电商网站,您可以拥有自己的品牌销售体系。然而,对于很多平台卖家来说,建站可能并不是一件容易的事。在构建网站之前需要考虑几个问题,以及如何选择…

如何用wireshark分析找出url接口和param参数???

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

Java学习第四天

程序流程控制 顺序结构:按顺序从上往下执行; 分支结构: if分支结构(区间匹配) switch分支(值匹配) 循环结构: for循环 while循环 do-while循环 死循环 continue和break区别&…

鸿道Intewell实时操作系统MIPS架构生态:龙芯2K1000

在当今快速发展的工业互联时代,实时操作系统(RTOS)扮演着至关重要的角色。实时操作系统为工业制造、能源电力、轨道交通、汽车电子等领域提供了高实时、高可靠和高效率的技术支持。实时操作系统的设计注重实时性、并行性、可靠性和功耗&#…

基于分布式计算的电商系统设计与实现【系统设计、模型预测、大屏设计、海量数据、Hadoop集群】

文章目录 有需要本项目的代码或文档以及全部资源,或者部署调试可以私信博主项目展示项目介绍 目录摘要Abstract1 引言1.1 研究背景1.2 国内外研究现状1.3 研究目的1.4 研究意义 2 关键技术理论介绍2.1 Hadoop相关组件介绍2.2 分布式集群介绍2.3 Pyecharts介绍2.4 Fl…

Keil The selected deivce“xxx“is unknown。。。识别到芯片依然烧录不进去程序解决或者未识别

之前一直用DAP烧录,用Jlink后烧录发现不行 在网上找了很多教程,版本等问题都一一排查依然不行 最后通过修改Port解决。。。。 将JTAG改成SW后就可识别芯片并且可以烧录。。。。

Vocechat本地部署结合内网穿透实现远程聊天交互实战方案(1)

文章目录 前言1. 拉取Vocechat2. 运行Vocechat3. 本地局域网访问4. 群晖安装Cpolar5. 配置公网地址6. 公网访问小结 7. 固定公网地址 前言 本文主要介绍如何在本地群晖NAS搭建一个自己的聊天服务Vocechat,并结合内网穿透工具实现使用任意浏览器远程访问进行智能聊天…

蚂蚁数科隐私计算技术平台FAIR入选2024数博会十大领先科技成果

8月28日,2024数博会领先科技成果发布会在贵阳国际生态会议中心举行,蚂蚁数科自主研发的隐私计算技术平台(FAIR)凭借领先的技术及广泛的应用场景脱颖而出,成功入选本届大会的“十大领先科技成果”奖。 据悉,…

HDMI、USB、WIFI的名称魔性更改

HDMI 授权组织把原来 HDMI 2.0 和 2.1 接口统称为 HDMI 2.1 的做法,等于是让电子设备上的 HDMI 2.1 标示丧失了区分作用,这操作就很离谱。 说起来类似这样的事情已经其实不是第一次发生了。 就拿现在最普及的 USB 接口来说,在 USB 3.2 标准…

音频检测电路 | 声音传感器模块 | 口哨开关 | Arduino

音频检测电路 | 声音传感器模块 | 口哨开关 | Arduino 案例分析电路设计1. **基本音频检测电路设计**电路结构:2. **灵敏度调节原理**方法:3. **非 MCU 控制的 LED 触发**设计步骤:4. **电路示例**5. **示意图(文本描述)**总结实验方法案例分析 一个硅胶娃娃,挤压或拍打…

(第三十八天)

1 、 harbor 软件包下载 https://github.com/search?qharbor&typerepositories 2 、出现拒绝连接错误,可能是由于容器没开 # 问题解决: [rootdocker ~] # curl localhost:5000/v2/_catalog curl : (7) Failed connect to localhost:5000; 拒绝…

零基础国产GD32单片机编程入门(一)GPIO输出Keil5工程创建含源码

文章目录 一.概要二.GD32单片机GPIO内部结构图三.GD32单片机GPIO输入输出信号流向四.GD32单片机GPIO引脚的复用以及重映射五.从零开始创建一个GD32F103C8T6单片机GPIO输出驱动LED灯例程六.工程源代码下载七.小结 一.概要 GPIO(general porpose intput output):单片机通用输入输…

如何禁止电脑访问网站

一、修改Hosts文件 找到Hosts文件:在Windows系统中,Hosts文件通常位于C:\Windows\System32\drivers\etc\目录下。 编辑Hosts文件:以管理员身份打开记事本或任意文本编辑器,然后找到并打开Hosts文件。 添加禁止访问的域名&#…

【小趴菜前端实习日记4】

el-table数据更新视图不更新的问题、el-dialog居中展示、el-form表单验证之对象属性验证、vue2过滤器 一、el-table数据更新视图不更新的问题二、el-dialog居中展示三、el-form表单验证之对象属性验证四、vue2过滤器 一、el-table数据更新视图不更新的问题 手动触发元素更新&a…

【C#】字段

C# 类具有哪些成员? 字段 1.什么是字段 字段(field)是一种表示与对象或类型(类与结构体)关联的变量字段是类型的成员,旧称“成员变量”与对象关联的字段亦称“实例字段”与类型关联的字段称为“静态字段”,由static修饰 通过一个代码来详细了解实例字段与静态字段…

简过网:大专学历可以考教师编吗?

大专学历可以考教师编吗? 在这里可以明确的告诉大家,大专考生可以报考小学老师,只要你有教师资格证,年龄在18~35周岁之间,大专的学历就可以报考小学教师编啦。 如果没有教师资格证,在备考教师编前&#x…

python从入门到精通:数据可视化-图形开发

1、json数据格式 • Json是一种轻量级的数据交互格式,可以按照Json指定的格式去组织和封装数据 • Json本质上是一种带有特殊格式的字符串 主要功能:json就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互&#xf…

惠海H6900B升压恒流调光IC芯片3.7V7.4V12V升压18V24V36V 48V 植物灯/电解水

H6900B升压型LED恒流驱动芯片是一款功升压恒流芯片,专为满足高亮度LED灯串的恒流驱动需求而设计。它结合合了多种功能电路,包括误差放大器、固定关断时间控制电路以及恒流驱动电路等,很好改良了LED灯的稳定。 一、产品特征 1.内置耐压60V功…