File tree Expand file tree Collapse file tree 1 file changed +9
-6
lines changed
Expand file tree Collapse file tree 1 file changed +9
-6
lines changed Original file line number Diff line number Diff line change 11# Android Debug Bridge daemon implementation in RT-Thread
22
3- 在PC与RT-Thread之间建立文件传输与执行shell的通道 。
3+ 在 PC 与 RT-Thread 之间建立文件传输与执行 shell 的通道 。
44
55## 1. 已实现功能
6+
67- 通信:tcpip
78- 通信:usb
8- - 服务:文件pull /push
9+ - 服务:文件 pull /push
910- 服务:shell
1011
1112## 2. 依赖
1213
1314- 传输 - LWIP/winusb
1415- 文件系统、POSIX、LIBC
15- - shell - 依赖finsh/msh
16+ - shell - 依赖finsh/msh
1617- 上位机工具
1718
1819## 3. 配置ADBD
1920
2021### 3.1 启用ADBD
22+
2123env配置如下:
2224
23- ```
25+ ``` base
2426Using TCPIP transfer /* 启用 TCP/IP传输数据 */
2527Using USB transfer /* 启动 USB 传输数据 */
2628Set transfer thread stack size /* 设置传输线程栈大小 */
@@ -31,6 +33,7 @@ Enable File service /* 开启 文件 服务 */
3133Enable external MOD /* 使能外部模块 */
3234 Enable File SYNC Mod /* 启用文件同步模块,支持校验MD5,跳过相同文件 */
3335 Enable File LIST Mod /* 启用获取文件目录模块 */
36+ Enable ADB service discovery /* 启用局域网发现服务 */
3437```
3538
3639## 3. 外部模块
@@ -39,15 +42,15 @@ Enable external MOD /* 使能外部模块 */
3942
4043### 3.1 基本原理
4144
42- ADB文件服务功能可以将PC端的路径原封不动的发给板子。当PC端输入 adb push ./pc_sync /dev_sync 命令时,ADB会将远端路径 /dev_sync 原封不动的发给设备端。即使包含特殊的字符,也会发送。可以利用这个特性,将远端目录按照一定格式进行构造,然后设备解析构造过的路径,从而执行特殊的操作。当PC机需要发送数据时,先将需要发送的数据生成文件,然后构造特殊的远端路径,执行 adb push 命令,将临时文件发送到设备端。完成一次 PC 到设备端的数据交换。设备端到PC的数据传递原理一样。
45+ ADB文件服务功能可以将PC端的路径原封不动的发给板子。当PC端输入 ` adb push ./pc_sync /dev_sync ` 命令时,ADB会将远端路径 ` /dev_sync ` 原封不动的发给设备端。即使包含特殊的字符,也会发送。可以利用这个特性,将远端目录按照一定格式进行构造,然后设备解析构造过的路径,从而执行特殊的操作。当PC机需要发送数据时,先将需要发送的数据生成文件,然后构造特殊的远端路径,执行 adb push 命令,将临时文件发送到设备端。完成一次 PC 到设备端的数据交换。设备端到PC的数据传递原理一样。
4346
4447### 3.2 文件同步
4548
4649文件同步时,PC端需要知道设备端的文件信息。所以先构造特殊命令,从设备端把文件信息拉回来。PC端根据设备端发回的信息,判断哪些文件需要同步,哪些文件需要删除。同步文件直接调用 adb push 命令,将文件发送到设备端。删除文件则需要给设备端发送需要删除的文件信息,让设备自行删除。
4750
4851### 3.2.1 脚本使用
4952
50- 脚本路径为: adbd /tools/script/adb_sync.py。在命令行中输入 python adb_sync.py 本地路径/ 远端路径/,即可将本地的一个文件夹同步到设备端。
53+ 脚本路径为: ` adbd/tools/script/adb_sync.py ` 。在命令行中输入 ` python adb_sync.py 本地路径/ 远端路径/ ` ,即可将本地的一个文件夹同步到设备端。
5154
5255## 4. 参考文档
5356
You can’t perform that action at this time.
0 commit comments