Android14 串口控制是能wifi adb实现简介
一、前言
文章目录
- [Android14 串口控制是能wifi adb实现简介](#Android14 串口控制是能wifi adb实现简介)
-
- 一、前言
- [二、Android14 串口控制是能wifi adb实现](#二、Android14 串口控制是能wifi adb实现)
-
- 1、设置prop属性命令开启adb
-
- (1)相关prop属性设置
- [(2)在设置界面或者 ifconfig命令 查看wifi或者有线的ip地址:](#(2)在设置界面或者 ifconfig命令 查看wifi或者有线的ip地址:)
- [(3)串口确认查看关键 adb 属性是否ok](#(3)串口确认查看关键 adb 属性是否ok)
- [(4)cmd 使用adb connect 连接adb](#(4)cmd 使用adb connect 连接adb)
- [2、设置Settings Global属性命令开启adb](#2、设置Settings Global属性命令开启adb)
- [3、设置prop属性和设置Settings Global属性命令开启adb的区别](#3、设置prop属性和设置Settings Global属性命令开启adb的区别)
- 三、其他
-
- [1、wifi adb 控制小结](#1、wifi adb 控制小结)
- [2、Android13 串口控制是能wifi adb实现](#2、Android13 串口控制是能wifi adb实现)
- [3、Android 13 wifi adb设置固定端口解决](#3、Android 13 wifi adb设置固定端口解决)
- [4、Android13 网络 Adb 默认开启](#4、Android13 网络 Adb 默认开启)
- [5、Android 13 网络 Adb相关流程深入分析研究](#5、Android 13 网络 Adb相关流程深入分析研究)
- [4、如果需求是连接有线网,应用打开wifi adb 可以正常连接adb](#4、如果需求是连接有线网,应用打开wifi adb 可以正常连接adb)
- 5、adb简介及常用命令总结
Android 系统开发初期调试,一般有串口功能调试,但是可能没有adb功能。
adb功能比串口调试方便一些,比如可以直接传输文件,定向打印日志到电脑,投屏,安装电脑中的apk等功能。
还有些情况是设备可以连接有线网,但是wifi有问题,上层接口无法打开adb,但是使用prop属性设置可以打开有线adb调试。
有需要的可以收藏看看。
本文只要介绍实现步骤,不详细介绍具体过程,adb相关过程之前已经分析过了,
虽然有的过程分析不是很准确,但是对于定制化是很有作用的。
二、Android14 串口控制是能wifi adb实现
1、设置prop属性命令开启adb
(1)相关prop属性设置
//获取查看adb 属性
getprop | grep adb
//设置 adb 关键属性值
setprop persist.sys.usb.config adb //设置 usb adb开关,有些设备默认是开启
setprop persist.adb.tls_server.enable 1 //设置adb开关,默认都是关闭的
(2)在设置界面或者 ifconfig命令 查看wifi或者有线的ip地址:
eth1 Link encap:Ethernet HWaddr 00:0e:c6:9c:5a:cc Driver ax_usb_nic
inet addr:192.168.31.18 Bcast:192.168.31.255 Mask:255.255.255.0
RX bytes:1028622 TX bytes:55833
(3)串口确认查看关键 adb 属性是否ok
console:/ # getprop | grep adb
[init.svc.adbd]: [running] //1、查看adb 是否正常运行
[persist.adb.tls_server.enable]: [1] //2、adb 服务是否开启
[persist.adb.wifi.guid]: [adb-a3b8c4a577a390f3-f6PGY4] //wifi adb 的进程
[persist.sys.usb.config]: [adb] //3、usb adb 是否打开
[service.adb.tls.port]: [33395] //4、adb端口号
[sys.rkadb.root]: [0]
[sys.usb.config]: [adb]
console:/ #
需要确认1-3点是否是adb 打开的状态;
第4点事adb端口号,Android13 之后都都是要端口号才能连接wifi adb;
当然也可以系统源码设置成默认5555,就可以不用设置端口号连接adb。
(4)cmd 使用adb connect 连接adb
C:\Users\As10048>adb connect 192.168.31.15:33395
connected to 192.168.31.15:33395
C:\Users\As10048>adb devices
List of devices attached
192.168.31.15:33395 device
可以看到是可以正常连接adb,显示adb列表的。
2、设置Settings Global属性命令开启adb
//获取当前adb wifi属性值:
settings get global adb_wifi_enabled
settings get global adb_enabled
或者
settings list global | grep adb //查询adb 相关settings global 属性
adb_enabled=0
adb_wifi_enabled=0
//设置当前adb wifi属性值:
settings put global adb_wifi_enabled 1
settings put global adb_enabled 1
3、设置prop属性和设置Settings Global属性命令开启adb的区别
1、设置prop属性 可以进行有线网和wifi adb,但是设置应用查看adb依然是关闭的状态;
2、设置Settings Global属性,是一定要连接wifi才能开启wifi adb的
因为Java代码打开adb流程里面判断了,wifi连接才使能adb,否则会马上关闭adb
所以只是调试使用并且需要有线网adb的情况,设置prop属性进行adb调试就行。
上面是未进行系统代码适配的情况,进行adb属性相关的设置;
其他adb知识,比如设置固定端口等设置有兴趣的可以往下看看。
三、其他
1、wifi adb 控制小结
主要相关命令:
//Settings 设置wifi adb 使能
settings put global adb_wifi_enabled 1
//获取adb属性,1 表示开启,0表示关闭
settings get global adb_wifi_enabled
//prop 设置wifi adb 使能
setprop persist.adb.tls_server.enable 1
//查询当前adb prop属性,1表示开启,0 表示关闭
getprop persist.adb.tls_server.enable
//获取wifi adb端口号,
getprop service.adb.tls.port
//查看usb debug 模式
settings get global adb_enabled
//设置usb debug模式命令
settings put global adb_enabled 1
如果是wif连接可以使用settings开启wifi adb,
如果是有线网连接的情况,只能使用prop属性开启 网络adb。
2、Android13 串口控制是能wifi adb实现
之前分析的adb使能介绍,和文本内容类似。
https://blog.csdn.net/wenzhi20102321/article/details/140047528
3、Android 13 wifi adb设置固定端口解决
需要适配修改系统源码。
https://blog.csdn.net/wenzhi20102321/article/details/131056174
4、Android13 网络 Adb 默认开启
设置端口号默认为5555 ,adb 连接时就不用设置端口号;
需要修改系统代码进行适配。
https://blog.csdn.net/wenzhi20102321/article/details/132382549
5、Android 13 网络 Adb相关流程深入分析研究
研究一遍adb具体流程,有兴趣的看看。
https://blog.csdn.net/wenzhi20102321/article/details/132735323
4、如果需求是连接有线网,应用打开wifi adb 可以正常连接adb
看懂上面两三篇文章,应该就会处理的。
需要:
(1)设置固定端口号,adb_wifi.cpp 源码修改
(2)源码 AdbDebuggingManager.java 去除wifi连接判断
后面就可以用settings global 属性控制有线网adb 了
5、adb简介及常用命令总结
https://blog.csdn.net/wenzhi20102321/article/details/113487927