模拟器无法ADB链接的所有情况及解决方案

前言:

adb(Android Debug Bridge)安卓调试桥,简单可以理解为外部连接安卓内部的一个接口,走的是tcp协议。

但是在模拟器上面经常会遇到连不上adb,在此收集一下各种情况,想起来或者遇到了就更新上来,希望帮到大家。

以下是原因及解决方案:
1.ADB未开启

像雷电的话,海外版和某些特殊版本可能默认关闭adb的,需要在设置>其他设置里面将ADB改成开启本地连接。顺带说一下如果是连接按键精灵等需要root的脚本工具时,应同步开启root权限。

另外,雷电模拟器在电脑第一次开机的第一个模拟器可能会连不上,重启一次即可。

2.ADB进程干扰,或者版本过低

出现这种情况一般就是电脑上开启了多个不同的adb版本,比如一个按键精灵手机助手,使用的是32版本的adb,又开启了脚本辅助调用了模拟器自带的34版本,或者开启了投屏工具等,导致adb冲突。

解决办法:关闭投屏、连接手机软件等软件的开机自启,然后重启电脑,并且只开自己想要的软件,也可以把所有使用adb的软件调用的adb.exe、AdbWinApi.dll、AdbWinUsbApi.dll替换成同一个版本的adb。

谷歌官方adb最新版下载直链:https://dl.google.com/android/repository/platform-tools-latest-windows.zip

3.代理软件影响

无论是安卓内部还是电脑端开启了ip代理工具之后,都会影响adb的使用,部分可以设置绕过本地代理的软件,在开启之后是可以重新连接的,但是有的代理软件只要一开启,adb就无法连接,哪怕后续关闭了代理,也一样无法连接需要重启电脑,然后如果是一些电脑端的代理,开启后可能要正常退出并重启电脑才可以连接adb。

解决办法:目前没有可以全部解决的办法,只能通过软件自带的设置去调整看能不能使用,如果不行的话就只能更换软件或者不用adb

4.部分版本的adb本身就有问题

雷电5.0.67、5.0.68、9.0.57、9.0.58等版本,adb均有问题,如果连不上可以尝试卸载重装其他的版本,部分版本可以通过替换adb恢复,部分版本不行,只能换。

5.备份恢复过模拟器,或者修改过模拟器的索引

今天自己遇到了,尝试了一下解决办法也很简单,就是启动模拟器之后,把adb改成关闭,重启一下模拟器,再把adb改成开启本地连接,adb就恢复了。因为adb端口跟模拟器索引是关联的,所以备份恢复过,或者修改了索引导致索引变化,adb就需要这样重新开启一下。

6.安装了Magisk和Shamiko模块

Shamiko模块会导致ro.adb.secure变成1,也就是开启adb密钥校验,此时adb devices会提示unauthorized,也就是没有权限,部分低版本可能提示offline之类的,部分模拟器上可以手动修改回来,大部分都是无效的,所以最好就是换成狐狸面具,使用Magisk Hide来隐藏root,就不需要Shamiko了,之前就是因为这个问题所以网站的环境包全部换成了狐狸面具。

相关推荐
游戏开发爱好者84 小时前
TraceEagle 代理抓包详解,无感代理、去证书绑定与 HTTP/3 解密能力解析
网络协议·计算机网络·网络安全·ios·adb·https·udp
总捣什么乱15 小时前
MySQL MySQL是怎么保证主备一致的?
android·mysql·adb
鹿鸣天涯7 小时前
应急响应:MySQL日志分析
mysql·安全·adb·oracle
9624561 天前
从 DBeaver 内存溢出到流式导入:一个 MySQL 生产数据迁移工具的开发实战
数据库·mysql·adb
2501_915918411 天前
抓包鹰 抓包会话重放与压力测试,接口回归验证与性能压测的方法
网络协议·计算机网络·网络安全·ios·adb·https·压力测试
风样滴男人哟1 天前
MySQL MySQL是怎么保证高可用的?
android·mysql·adb
__Witheart__2 天前
3568 Android otg模式下adb热拔插不识别
android·adb·rockchip
Full Stack Developme2 天前
SpringBoot 整合 HikariCP 并列出参数配置清单
spring boot·后端·adb
starvapour3 天前
在关机键损坏的情况下让手机关机
android·adb·手机
Cry丶4 天前
【已解决】adb devices 能识别手机,但 HBuilderX 搜索不到设备的避坑指南
android·adb·uni-app·hbuilderx·真机调试