版权归作者所有,如有转发,请注明文章出处:https://cyrus-studio.github.io/blog/

adb 远程调试

手机上开发者选项中打开网络调试 image.png

或者连接 USB 执行下面命令将 ADB 设置为通过端口 5555 进行 TCP/IP 调试 adb tcpip 5555 启用 TCP/IP 模式后可以断开 USB 连接

如果网络调试开关中没有显示设备ip地址,通过下面方法获取设备的 IP 地址:

  • 在设备上,进入设置 > 网络与互联网 > Wi-Fi,选择当前连接的网络。

  • 找到设备的 IP 地址(通常在网络详情中)。

根据设备 ip 地址和端口号连接到设备,并在手机上确认授权调试提示

adb connect 192.168.0.101:5555
already connected to 192.168.0.101:5555

第一次授权可能会提示 unauthorized

adb devices
List of devices attached
192.168.0.101:5555      unauthorized

重启 adb,重新再连接

adb kill-server
adb connect 192.168.0.101:5555
* daemon not running; starting now at tcp:5037
* daemon started successfully
connected to 192.168.0.101:5555

这时已经连接上了,能正常进入设备的 adb shell

adb shell
wayne:/ # exit

adb devices
List of devices attached
192.168.0.101:5555      device

如果需要断开连接,使用下面命令

adb disconnect 192.168.0.101

disconnected 192.168.0.101

使用以下命令可以将 ADB 设置回 USB 模式 adb usb

注意:确保设备和计算机在同一个网络下。

手动修改 adb 调试授权信息

USB远程调试连不上?授权弹窗无法弹出?可以通过下面方法解决。

在 Android 系统中,adb 调试授权信息存储在设备的 /data/misc/adb/adb_keys 文件中。

可以将当前电脑的 adb 公钥复制到设备的 adb_keys 文件中,手动实现 adb 调试授权。

1. 获取电脑的 ADB 公钥

电脑的 ADB 公钥文件通常存放在以下位置:

  • Linux/macOS: ~/.android/adbkey.pub

  • Windows: C:\Users<用户名>.android\adbkey.pub

ls -alh ~/.android

total 32K
drwxr-x---  2 cyrus cyrus 4.0K Sep  1 12:12 .
drwxr-x--- 10 cyrus cyrus 4.0K Nov  3 03:38 ..
-rw-r--r--  1 cyrus cyrus   38 Nov  2 23:45 adb.5037
-rw-------  1 cyrus cyrus 1.7K Aug 12 12:48 adbkey
-rw-r--r--  1 cyrus cyrus  718 Aug 12 12:48 adbkey.pub

找到 adbkey.pub 后,复制文件中的内容。这就是当前电脑的 ADB 公钥。

cat ~/.android/adbkey.pub

QAAAAIr0W++7ZSo1old60xYNTncmxt+4hVroHv6v1MVnBaBefQA3xQeQ401lEnbKFxKU0qycHH4CBCq2uS1iElfeGJJ8nPBFPQcc+j/JFnQfxXNBGj578dMgp6LFkaa/NvRZzKmp5603DbC6kf6flRBeNmfFpsVV3Yrt1UV/wdBPuHSBZ4QJ1Mc91GXgHcVVYmx7KDE0Onu24q+4SYSXIXHFiNpXBNIQeTVunWFBwWY0SCrqMjTLZgrWxFdPTrVFY7ijtu+TmykL2N6rSi32dcJXHJyZrvM49nHOfKGWiWySO+17z3kbV+e+gwYq6zLOZGI/f1UihKlEnWpFDV3Ora1xQPV0nvvzr6gZTtclzhaaaajuPGOmnXjzKI1uAjDUgGtzefISk5fwWXEc2J3+HjqsM4UlbTxcsa63h4hIufj1OnSG4lnjDLqUb9YytkmHA3V6aLlCN3bbbbmVmIxAEAAQA= cyrus@studio

2. 将公钥添加到 Android 设备的 adb_keys 文件

使用 ADB 进入设备的 Shell(假设设备已经 root,可以通过 USB 连接)

adb shell

进入 ADB 密钥目录

cd /data/misc/adb

编辑 adb_keys 文件

nano adb_keys

将公钥追加到 adb_keys 文件中 image.png Ctrl + X 退出,按 Y 确认修改,Enter 保存。

重启 ADB 服务,重新连接

adb kill-server

adb connect 192.168.0.101:5555
* daemon not running; starting now at tcp:5037
* daemon started successfully
connected to 192.168.0.101:5555