OpenHarmony开发者论坛
标题:
OpenHarmony分布式软总线API调用测试工具 softbus_tool使用说明
[打印本页]
作者:
陈美汝
时间:
2024-3-28 15:46
标题:
OpenHarmony分布式软总线API调用测试工具 softbus_tool使用说明
[md]**softbus\_tool是OpenHarmony分布式软总线API调用测试工具**,文件结构如下图所示。
softbus\_tool能够将软总线interfaces目录下的一些常用接口集中起来,供设备间搭建一些场景时使用(比如设备绑定、BR组网,BLE组网, 指定P2P链路传输等)。
![image.png](
https://forums-obs.openharmony.c ... l7culdracmaz8zv.png
"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程序
出现如下图,即为执行成功。
![image.png](
https://forums-obs.openharmony.c ... dsn5f4pynss4f7s.png
"image.png")
##### 3.WiFi组网
确认A,B两端设备均已打开wifi开关,且已连接同一WiFi网络。
1. A端执行 0 - PublishService,发布服务。
2. B端执行 2 - StartDiscovery,订阅服务。
3. B端执行 4 - JoinLNN,组网。
![image.png](
https://forums-obs.openharmony.c ... ssj6sxssv6wpsco.png
"image.png")
![image.png](
https://forums-obs.openharmony.c ... qlu6wawv7hhh1la.png
"image.png")
![image.png](
https://forums-obs.openharmony.c ... uq2930q820ou7po.png
"image.png")
##### 4.WiFi退网
1. A端(或B端)执行 6 - GetLocalDeviceInfo,查看本端NetworkId值。
2. B端(或A端)执行 5 - LeaveLNN,退网。
![image.png](
https://forums-obs.openharmony.c ... 1hpi1f2p1ib7377.png
"image.png")
![image.png](
https://forums-obs.openharmony.c ... 2tdt2kaz6at7a9b.png
"image.png")
##### 5.File传输指定p2p链路
开始传输前,设备间需要WiFi组网成功。
1. A端执行14 - CreateSessionServer,创建会话服务。
2. B端执行14 - CreateSessionServer,创建会话服务。
![image.png](
https://forums-obs.openharmony.c ... p18tmtsyqbbmmzm.png
"image.png")
3. A端(或B端)选择为文件发送端,执行18 - SetFileSendListener, 注册文件发送监听。
4. B端(或A端)选择为文件接收端,执行19 - SetFileRecvListener, 注册文件接收监听。
![image.png](
https://forums-obs.openharmony.c ... wmwwsgwwebilelk.png
"image.png")
![image.png](
https://forums-obs.openharmony.c ... pvuvv7prkmv877t.png
"image.png")
5. B端(或A端)执行 6 - GetLocalDeviceInfo,查看本端NetworkId值。
![image.png](
https://forums-obs.openharmony.c ... rjcr3n3zt5j53tz.png
"image.png")
6. A端(或B端)执行16 - OpenSession,打开会话。
![image.png](
https://forums-obs.openharmony.c ... oxsc6xomtomcqct.png
"image.png")
7. A端(或B端)执行23 - SendFile,发送文件。
![image.png](
https://forums-obs.openharmony.c ... rehyvynmumwyji2.png
"image.png")
![image.png](
https://forums-obs.openharmony.c ... 8msm7wvmtgzsg2m.png
"image.png")
![image.png](
https://forums-obs.openharmony.c ... or858ky3w38oko6.png
"image.png")
![image.png](
https://forums-obs.openharmony.c ... j25bel213542h9a.png
"image.png")
8. A端(或B端)执行17 - CloseSession,关闭会话。
![image.png](
https://forums-obs.openharmony.c ... i2bxcboqz4slbfs.png
"image.png")
9. A端执行15 - RemoveSessionServer,删除会话服务。
10. B端执行15 - RemoveSessionServer,删除会话服务。
![image.png](
https://forums-obs.openharmony.c ... usn87aelmmhs81g.png
"image.png")
[/md]
作者:
juddvinet
时间:
2024-4-1 11:00
你好,文章中提到“修改后为:deps = [ ":SoftBusDumpDeviceInfo", "softbus”能提供完成的修改字段或者文件吗?现在遇到编译失败的问题、
作者:
shixiaocheng
时间:
2024-4-1 14:19
回复
juddvinet
: deps = [ ":SoftBusDumpDeviceInfo", "softbus_tool:softbus_tool"]
作者:
juddvinet
时间:
2024-4-1 15:53
回复
shixiaocheng
: !!请指正一下我的操作错误,感谢
我的BUILD.gn已经修改
group("tool") {
deps = [ ":SoftBusDumpDeviceInfo", "softbus_tool:softbus_tool"]
}
编译命令是:(在SDK根目录)
sudo ./build.sh --product-name rk3568 --ccache --build-target softbus_tool
提示的错误是
[OHOS INFO] ERROR at //foundation/communication/dsoftbus/tools/BUILD.gn:31:38: Unable to load "/home/ubuntu/openharmony/4.0/SDK/foundation/communication/dsoftbus/tools/softbus_tool/BUILD.gn".
[OHOS INFO] deps = [ ":SoftBusDumpDeviceInfo", "softbus_tool:softbus_tool"]
[OHOS INFO] ^--------------------------
[OHOS INFO] e2fsprogs installed successfully
作者:
shixiaocheng
时间:
2024-4-1 17:22
回复
juddvinet
: 全量编译试试
作者:
juddvinet
时间:
2024-4-2 09:37
回复
shixiaocheng
: 您好,感谢您的回复。
我通过清理编译文件后,重新全量编译也是会提示之前的错误。(错误内容与上段粘贴一致)
从错误内容里面分析 ,我的SDK 的 foundation/communication/dsoftbus/tools/ 目录下面没有softbus_tool 这个文件夹。只有一个device_info的文件夹。
作者:
shixiaocheng
时间:
2024-4-2 11:11
回复
juddvinet
: 将 softbus_tool 目录代码下载到本地,拷贝到 OpenHarmony 源码 \foundation\communication\dsoftbus\tools路径 下
不会是没有下载代码吧,这个代码要自己去gitee上下载的
作者:
陈美汝
时间:
2024-4-2 11:17
回复
juddvinet
: 不好意思写文章时编辑错误误删了 导致不完成 已修改
作者:
juddvinet
时间:
2024-4-2 15:15
回复
shixiaocheng
: 可以分享一下代码吗?子啊
https://gitee.com/openharmony/communication_dsoftbus.git
这个仓库里面没有找到softbus_tool。
作者:
shixiaocheng
时间:
2024-4-3 09:46
回复
juddvinet
:
https://gitee.com/shixiaocheng12138/dsoftbus_tool
作者:
Hazel
时间:
2024-6-6 10:31
bind_tool是32位的,请问有64位的吗,或者源码
作者:
liuxinli
时间:
2024-7-9 11:09
回复
Hazel
: 请问一下,你找到bind_tool的源码了吗?
作者:
sudo_huxin
时间:
2024-8-14 11:31
请问,无屏幕情况下如何进行设备绑定
作者:
liuxinli
时间:
2024-8-22 10:36
无屏模式的认证撸代码搞定
欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/)
Powered by Discuz! X3.5