【Android】ADB无线连接Android设备

简介

Android Debug Bridge,简称adb,是一种功能多样的命令行工具,可让您与设备进行通信。adb 命令可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件:

  • 客户端:用于发送命令。客户端在开发机器上运行。您可以通过发出 adb 命令从命令行终端调用客户端。
  • 守护程序 (adbd):用于在设备上运行命令。守护程序在每个设备上作为后台进程运行。
  • 服务器:用于管理客户端与守护程序之间的通信。服务器在开发机器上作为后台进程运行。

无线连接的条件

使用adb无线连接设备,应具备以下条件:

  • 一台安装了Android Studio开发工具的电脑。
  • 一台与电脑处于同一网段的Android设备(一般可通过连接相同wifi、宽带实现网段相同)。
  • 在电脑使用cmd执行 ping <Android设备ip地址> 能够ping通。

adb连接设备

方法一

当满足上述提到的条件,就可以开始连接了。

打开cmd.exe或Android Studio软件里面底部的Terminal工具,输入以下命令:

adb connect <ip地址>:5555

连接上的设备可以通过执行adb devices命令查看

adb devices

设备连接上,就可以查看并对设备进行安装调试的工作了

连接上的设备可通过执行adb disconnect <ip地址>:5555断开连接

adb disconnect <ip地址>:5555

部分设备默认端口不是5555,需要手动修改,请看下方的修改端口号。

方法二

使用方法二进行adb连接,应该是出现了使用方法一连接不通adb的情况,这时候就可以使用方法二来进行连接。

  1. 需要将USB线(可以传输数据的USB线)连接安卓和开发电脑,在开发者选项中开启USB调试,并将USB配置为MTP(多媒体传输)。
  2. 在电脑上打开cmd命令行窗口,输入adb devices,如果出现有设备,表示电脑已通过USB连接上手机。
  3. 接着在cmd命令行窗口输入两条命令:
    adb root   <!-- 使用root权限重新启动adbd -->
    adb shell  <!-- 进入到Android系统的shell -->
    
  4. 输入命令,将设备端口改为5555,将5555改为-1则表示打开adb的USB调试功能。
    setprop.service.adb.tcp.port 5555
    
  5. 输入exit命令,退出shell。
  6. 设置目标设备以监听端口 5555 上的 TCP/IP 连接。
    adb tcpip 5555
    
  7. 拔掉USB线,输入connect连接命令即可完成连接。
    adb connect <ip地址>:5555
    

修改端口号

方法一

端口号修改,使用到Github上标星31.5k的AndroidUtilCode,该工具有提供相关类在Android设备上执行cmd命令。

引入:

implementation 'com.blankj:utilcodex:1.30.1'

Java代码:

ShellUtils.CommandResult openAdb = ShellUtils.execCmd("setprop service.adb.tcp.port 5555", AppUtils.isAppRoot());

AndroidUtilCode使用教程

方法二

使用数据线连接上设备,执行命令adb tcpip 5555,将端口号重置为5555。

adb tcpip 5555

修改端口号后,拔掉数据线,执行adb命令出现连接失败的情况,这是修改失败了,可尝试下方问题集合的第二点解决问题。

值得注意的是,Android官方在Android 11+的设备推出了升级版的无线调试,届时直接扫描Android studio开发工具生成的二维码即可连接,简单又便捷。

辅助工具

adb工具的使用前提是必须先连接上设备

android-tool

android-tool是一个Flutter编写的程序,支持Windows、Mac、Linux系统,它将adb的众多命令封装成一个个小小的功能,极大的提高了执行adb相关操作的效率。

链接:用Flutter开发一个桌面端ADB工具应用

scrcpy-gui

scrcpy-gui是一个无需root权限即可在pc端操控Android设备的工具。

链接:scrcpy-gui

问题集合

1、missing port in specification: tcp:192.168.31.209
原因:缺少端口。
解决方案:加上端口,默认为5555

2、cannot connect to 192.168.31.209:5555: 由于目标计算机积极拒绝,无法连接。 (10061)
原因:端口号不对。
解决方案:安装一个app使用adb命令配置端口号。最好是使用数据线连接上设备,执行adb tcpip 5555命令监听端口 5555 上的 TCP/IP 连接,响应restarting in TCP mode port: 5555后,拔掉数据线执行连接命令即可。

3、ping不通怎么办?

解决方案

  • 检查ping的ip地址是否正确,pc端的ip地址与移动端的ip地址网段是否相同。
  • 若提示无法访问目标主机,如果核对ip、网段都没错,是移动端设备还没有root,不允许你访问
    在这里插入图片描述
    需要下载相关的root工具将设备给root掉,root成功就可以ping通。
    设备root成功,若是还不能够ping通,请切换无线连接的WiFi再次尝试。

其它问题暂未遇到,如本文提供方法无法处理,请查看下方的参考文档。若无法连接,请放弃使用adb无线连接的方案,改用可传输数据的数据线进行连接。

参考文档

  • 2
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
ADBAndroid Debug Bridge)是Android开发工具包(SDK)的一部分,它用于在计算机和安卓设备之间建立调试连接。ADB通常需要通过USB电缆来连接计算机与设备,但是如果设备支持无线连接,我们也可以使用无线方式连接。 要使用ADB进行无线连接,首先需要通过USB将安卓设备连接到电脑,并在计算机上安装好ADB驱动程序。接下来,打开CMD或终端窗口,并输入adb devices命令来确认设备已被正常连接。 接下来,通过输入adb tcpip <port>命令,将ADB连接端口更改为指定的端口号。通常情况下,我们可以选择5555作为端口号。若成功更改端口号,CMD或终端窗口将显示"restarting in TCP mode port: <port>"等信息。 然后,我们需要找到设备的IP地址。可以在设备的设置中,找到关于手机(或者类似的)选项,里面应该有设备的IP地址。或者,我们也可以在CMD或终端窗口中输入adb shell ifconfig命令来获取设备的IP地址。 最后,我们可以通过输入adb connect <device IP address>:<port>命令来与安卓设备进行无线连接。例如,如果设备的IP地址是192.168.0.100,并且端口号是5555,我们可以输入adb connect 192.168.0.100:5555来建立连接。 如果一切顺利,我们将在CMD或终端窗口中看到"connected to <device IP address>:<port>"的提示信息,表示已经成功连接到设备。 通过以上步骤,我们可以在无需使用USB电缆的情况下,使用ADB与安卓设备进行调试和数据传输。需要注意的是,无线连接速度可能相对较慢,并且连接可能不太稳定,请确保设备和计算机在同一网络环境下,以保证良好的无线连接体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宾有为

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值