模拟器无法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了,之前就是因为这个问题所以网站的环境包全部换成了狐狸面具。

相关推荐
风流 少年6 天前
mysql mcp
数据库·mysql·adb
轩情吖6 天前
MySQL初识
android·数据库·sql·mysql·adb·存储引擎
lucky67078 天前
Laravel6.x新特性全解析
数据库·mysql·adb
秋氘渔8 天前
MySQL EXPLAIN命令详解:SQL查询性能分析与优化指南(基础篇)
sql·mysql·adb
半桔9 天前
【MySQL数据库】SQL 查询封神之路:步步拆解核心操作,手把手帮你解锁高阶玩法
linux·数据库·sql·mysql·adb·oracle
桂花很香,旭很美9 天前
ADB 安卓实战手册
android·adb
limingade12 天前
ADB应用浅析-普通手机app不依赖电脑如何获取ADB权限
adb·智能手机·android应用·手机无线调试adb·手机adb抓取屏幕画面·无线调试抓屏·adb授权
limingade12 天前
重启手机后-自动领金币app如何独自取到ADB权限进行手机操作
物联网·adb·智能手机·ocr识别手机广告·adb自动关闭广告·手机adb授权·自动领金币app
·云扬·13 天前
MySQL基于位点的主从复制完整部署指南
android·mysql·adb