Android 13 wifi adb设置固定端口解决

03-01 1247阅读

Android 13 wifi adb设置固定端口解决

本文只管解决介绍不做代码层面具体分析。

文章目录

  • Android 13 wifi adb设置固定端口解决
    • 一、前言
    • 二、设置wifi 固定端口号
    • 三、打开 "无线调试"
      • 1、手动打开设置里面的开发者选项 里面的“无线调试”
      • 2、通过命令设置打开 "无线调试"
      • 其他

        一、前言

        Android13 wifi adb 做了一些变更,不管是代码层面还是用户使用层面都是做了修改!

        具体来说应该是Android12 就变更了,因为我之前一直开发Android11 网络,

        最近系统版本变更到 Android13 ,发现代码上确实做了较多变更。

        代码层面的修改:
            以前wifi 和 有线网络的系统逻辑都是在framework内,现在变成在package\modules\Connectivity下面
            蓝牙方面也是做了相当大的改动!这里不做分析。
        客户使用层面的修改:
            Android11之前 wifi adb 端口默认是 5555,adb connect ip即可完成adb 连接
            Android13 上,wifi adb 端口默认是 随机的6位数,每次wifi adb 连接需要打开开发者模式里面的"无线调试",
            并且最麻烦的是每次连接新的wifi,都需要重新打开开发者模式里面的"无线调试",会生成新的端口号,需要输入端口号才能进行adb 连接。
        

        我这里是Tv平台,usb调试默认是打开的,并且基本是没有usb线调试的。

        Android13 必须要打开wifi,才能打开“无线调试”,那么Android13 无法进行有线adb了?

        刚开始,我以为是这样子的。后面发现设置两个属性后,就可以进行有线网络的adb了。哈哈。代码不绝人。

        二、设置wifi 固定端口号

        找到 adb_wifi.cpp 文件,修改默认端口号即可。

        packages\modules\adb\daemon\adb_wifi.cpp

             if (sTlsServer != nullptr) {
                 delete sTlsServer;
             }
        -    sTlsServer = new TlsServer(0);
        +    sTlsServer = new TlsServer(5555); //传入需要设置的端口号
        

        这个 adb_wifi.cpp 是Android13 新增的文件,Android11 以前是没有的。

        这个代码是全局搜索系统代码的wifi adb/adb wifi看到的,网上目前还没有相关的研究。

        三、打开 “无线调试”

        1、手动打开设置里面的开发者选项 里面的“无线调试”

        代码里面原生Settings 点击"无线调试",开关控制的大概代码位置:

        packages\apps\Settings\src\com\android\settings\development\WirelessDebuggingFragment.java
        

        因为点击开关后还要弹框确认,具体到哪一行是有效设置未作具体分析,后续需要可以自行研究。

        2、通过命令设置打开 “无线调试”

        对比了下,打开“无线调试”前后,系统里面的所有adb 属性,发现设置中主要是修改了两个属性。

        Android 13 wifi adb设置固定端口解决

        通过后续测试发现,确实只是要修改下面两个属性就可以进行wifi/有线的adb 网络调试了。

        setprop persist.adb.tls_server.enable 1 //设置开启无线调试
        setprop service.adb.tls.port 5555  //设置端口号
        

        测试发现,连接网络后,设置这两个属性,不管是wifi 还是有线网都是可以进行adb调试的。完美!

        其他

        Android13 wifi/有线网 如果连接无法上网的网络,网络校验机制会一直进行重连。

        Android13 中发现设置交换机的有线网的静态ip,无法进行adb 连接成功;路由器的静态ip可以连接,奇怪!

        Android13 有线变更:

        https://blog.csdn.net/wenzhi20102321/article/details/130607641

        Android13 某些配置文件乱码问题:

        https://blog.csdn.net/wenzhi20102321/article/details/130646878

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]