错误:无法在Android Studio的SDK中找到ADB


93

有人知道这意味着什么吗?我对Android有点不满意。当我在模拟器上单击“运行”按钮时,会收到此消息。

可抛出:无法在SDK中找到adb

我正在运行最新版本0.8.14

编辑:我正在使用Android Studio


关闭你的日食。如果您使用的是MAC,则应在命令行或终端中输入以下内容。adb kill-server,然后输入。然后写adb start-server ..再次打开eclipse。
Theo 2014年

您正在使用Eclipse吗?
Vladislav Kan

adb位于eclipse的安装位置。即C:\ Users(您的名字)\ Desktop \ Android Studio \ adt-bundle-windows-x86_64-20140702 \ eclipse
Theo

8
由于AVG防病毒软件将adb.exe检测为木马(错误警报)并将其添加到隔离区,因此也会发生这种情况。只需将文件列入白名单,就可以了。
Dzhuneyt

@Dzhuneyt,不仅是AVG。Avast也给我带来了麻烦。确保检查您的防病毒软件。
Nechemia Hoffmann,

Answers:


169

ADB现在位于的Android SDK平台的工具

  1. 检查[sdk directory]/platform-tools目录,如果目录不存在,则在Android Studio中打开SDK管理器(顶部菜单中的按钮,带有向下箭头的android徽标),切换到SDK工具标签,然后选择/安装Android SDK平台-工具

在此处输入图片说明 在此处输入图片说明 在此处输入图片说明

  1. 或者,您可以尝试使用独立的SDK管理器:打开SDK管理器,您应该在设置窗口底部的某个位置看到“启动独立的SDK管理器”链接。点击并打开独立的SDK管理器,然后安装/更新

“工具> Android SDK平台工具”。

  1. 如果以上方法不能解决问题,请尝试重新安装工具:打开“独立SDK管理器”并卸载Android SDK平台工具,[your sdk directory]/platform-tools完全删除目录,然后使用SDK管理器再次安装。

  2. 检查您的防病毒箱。有时防病毒程序认为adb.exe是病毒。如果在此处找到它,请还原该文件,它将开始工作。您也可以将adb.exe作为安全文件放入防病毒程序中。

在此处输入图片说明 在此处输入图片说明

希望这可以帮助!


22

对于仍然遇到此问题的任何人。我有一个类似的问题,我可以使用命令行从adb看到我的设备,adb devices但是当我连接了设备时,Android Studio无法识别,并且会抛出以下任何一个:

  • Unable to locate adb within SDK 要么
  • Unable to obtain result of 'adb version'

    我尝试了adb的启动/停止,卸载,平台工具等等。我发现C:\Users\<UserName>\AppData\Local\Android文件夹中有多个sdk文件夹。我执行了以下操作:

    1. 使用Android Studio的SDK Manager的Unistall Platform-Tools
    2. 删除platform-tools\每个C:\Users\<UserName>\AppData\Local\Android\sdk*目录中的所有目录
    3. 使用Android Studio的SDK Manager重新安装了平台工具

希望这有一天能帮助某人解决他们的问题。


1
C:\ Users \ myusername \ AppData \ Local \ Android \ sdk \ platform-tools
IberoMedia '16

在我的情况下,我只有一个SDK文件夹,但是卸载和重新安装Platform-Tools对我来说是
有用的

17

如果您使用的是Android Studio并且具有AVG病毒防护,则adb.exe文件可能在病毒库中。这是我的问题。要解决:打开AVG。选择选项(右上角),然后选择病毒库。如果在其中看到adb.exe文件,请选择它,然后单击“还原”。


4
可以确认这在Avast中发生。
SuperHaker

3
是的,它也发生在Avast中。转到保护>病毒箱>选中所需的复选框adb.exe>单击下拉菜单上的删除>恢复>重新启动Android Studio
M.ArslanKhan

15

在Android Studio中,单击android studio顶部标签栏上的“工具”

工具>>安卓>> SDK管理器>>启动独立的SDK管理器

在那里,您可以清楚地看到缺少哪个平台工具,然后安装该工具,您的adb将开始正常工作。

至少安装一个Api软件包(Android Api 23或24)。


11

就我而言,我没有为我的项目选择SDK(不确定为什么)。只需转到Project Structure对话框(alt+ctrl+shift+s或屏幕上的按钮1),然后选择project-> Project SDK <no SDK>。刚刚将其更改为最新版本

项目结构对话框


8

试试这个:File-> project structure into Project Structure Left> SDKs SDK位置选择Android SDK位置(旧版本使用按+,添加另一个SDK)


所以您认为我的SDK位置有问题吗?
SleepsOnNewspapers

1
是的,我想是这样。尝试打开sdk管理器并安装所有插件
Vladislav Kan

4

最后,经过几个小时的调查,我认为对于AVD Manager“无法找到adb”存在问题的每个人,我还有另一个解决方案。

我知道我们在文件->设置->外观和行为->系统设置-> Android SDK中具有SDK的设置。这似乎还不够!尽管有上述设置,但Android Studio(至少是新版本4)似乎没有为项目提供默认的SDK。

因此,您(对于每个项目)还需要转到文件->项目结构->项目设置->项目,然后选择Project SDK,默认情况下将其设置为[No SDK]。

如果下拉框中没有任何内容,请选择“新建”,选择“ Android SDK”,然后导航至您的Android SDK位置(在Windows上通常为C:\ Users [用户名] \ AppData \ Local \ Android \ Sdk)。然后,您将能够选择Android API xx平台。您现在不应该收到此烦人的adb错误。

高温超导


非常感谢你。确实很糟糕,没有选择默认的sdk,也没有出现对话框。
AllesFuerDenDackel


3

就我而言,这是一个不正确路径的简单情况。只需转到“项目结构”对话框(alt + ctrl + shift + s),然后转到platform-> SDK和固定的Android SDK主页路径即可。

修复SDK路径


就我而言,我没有选择项目SDK。N00b错误。这使我走上了正确的道路。谢谢!
EpicVoyage

2

我删除并重新安装了Android SDK Platform-Tools 23 23.0.0。这样就解决了问题。昨天我已经使用SDK Manager对SDK进行了完整的更新,删除了一些我认为不再需要的部分并下载了更新。也许这就是问题的根源。


2

有同样的问题。MacOS,Android Studio 3.6.1,SDK Android 10.0。

这是Android Studio寻找adb二进制文件的目录:

$ cd ~/Library/Android/sdk/platform-tools/
➜  platform-tools $ ls
package.xml  platform-tools  signing_request_for.3232179dce22d8a6332018729026ed39f5d5cd0b.1585090071041.platform-tools_r29.0.6-darwin.filelist

但是,二进制文件在一个目录中更深:

platform-tools $ ls platform-tools
adb  dmtracedump  etc1tool  hprof-conv  make_f2fs  mke2fs.conf  sload_f2fs         sqlite3
api  e2fsdroid    fastboot  lib64       mke2fs     NOTICE.txt   source.properties  systrace

只需建立到当前目录的软链接即可:

platform-tools $ ln -s platform-tools/adb ./
➜  platform-tools $ ls
adb          platform-tools
package.xml  signing_request_for.3232179dce22d8a6332018729026ed39f5d5cd0b.1585090071041.platform-tools_r29.0.6-darwin.filelist

这确实对我有用。

PS将其添加到PATH中无济于事,我当然可以在终端中运行它,但是Android Studio不会从MacOS中的.zshrc中提取PATH变量。


只是在CI环境(Bitrise.io)上遇到了同样的问题,谢谢指出!可能是平台工具v29.0.6中的最新更改。
tobi512

1

是的,我也有同样的经历

现在,ADB位于platform-tools目录中。

  1. korsosa说,请检查您的[sdk目录] / platform-tools目录(如果存在)。如果不是,请在Android Studio中打开SDK管理器(顶部菜单中的某个按钮,带有向下箭头的android徽标),然后下载并安装“工具”>“ Android SDK平台工具”。

  2. 如果您具有平台工具,则需要检查adb.exe文件。就我而言,该文件已损坏,因此请再次下载该平台工具


1

如果您已经安装了Android SDK平台工具,请转到文件>设置>系统设置> Android SDK>启动独立SDK管理器。

在工具目录中,您会看到Android SDK Platform-Tools已卸载。因此,取消所有选择并选中该框,然后单击安装按钮即可。


1

尽管在我的情况下所有这些答案可能都是正确的,但它没有用。当我获得3.0rc1后卸载2. * android studio版本时,一切都开始了。但这搞砸了,开始出现此错误。在那之后,我确实遵循了所有这些步骤,但是没有一个起作用。在分析SDK目录时,我注意到我有两个Platform Tools文件夹。.backup有adb.exe,而另一个则没有。我只是将.backup文件复制到另一个platform-tool文件夹中,所以它解决了我的问题。

在此处输入图片说明


1

我不知道回答这个问题可能为时已晚。但是,如果有人在我的处境中并为这个问题而苦苦挣扎将很有用。

很少有防病毒程序将adb.exe检测为病毒。您应该查看防病毒程序将检测到的威胁置于何处,然后从那里进行恢复。对于Avast Antivirus位于病毒箱内部

希望对某人有用!


1

如果您拥有防病毒软件(例如AVG),则可以将文件移出隔离区。

单击菜单>隔离> adb.exe文件旁边的复选框>删除旁边的箭头>还原

但有时,该文件将继续重新出现在隔离区中。解决方法是单击Restore and add exception,或进入菜单>设置>常规>异常>并添加如下内容:C:\Users\Johndoe\AppData\Local\Android\Sdk\platform-tools\

其他防病毒软件与APK文件可能位于的“隔离区”类似。


1

就我而言,我已经尝试了上面的方法,但是好像无法安装adb,所以我要做的就是将adb.exe复制到该文件夹​​并正常工作!我复制了adb.exe并粘贴到设备的以下路径中:

C:\ Users \您的设备用户名\ AppData \ Local \ Android \ sdk

C:\ Users \您的设备用户名\ AppData \ Local \ Android \ sdk \ platform-tools

希望这可以帮助需要帮助的人。


0

即使下载了特定的必需文件或所有内容,我们也可能会遇到文件执行错误。

文件执行失败可能是由于以下原因:
1.用户权限(继承)。
2.损坏的文件。
3.文件同时被另一个应用程序访问。
4.文件被反恶意软件/反病毒软件锁定。

奇怪的是,我的防病毒软件将adb,avd和jndispatch.dll文件检测为不干净的文件,并将它们转储到其Vault中。

我不得不从AVG Vault恢复它们。将AVG配置为忽略AndroidStudio的文件夹(将文件夹添加到例外列表)和其他必需的文件夹。

如果您没有杀毒软件,但仍然遇到此问题,请记住Windows 7及更高版本具有内置的“ Windows Defender”。看看这个家伙是否在做同样的事情。将您的文件夹放入防病毒“排除”列表中,因为该供应商在全球范围内都受到信任。

同样的答案将转到“使用AMD处理器启动AVD时出错”。我没有足够的声誉来回答这个问题。


0

如果您正在运行Windows 10(也可能是Windows 7)和Android Studio,则可能是因为Windows虚拟内存问题。看到这个无法获得adb版本


可以在这里详细说明。由于外部链接会随着时间而变化。
Panther

0

我遇到了这个问题Android Studio 3,SDK管理器不知何故没有在platform-tools文件夹中包含完整的工具,因此我不得不从以下位置手动下载它:

https://developer.android.com/studio/releases/platform-tools.html

然后解压到我的android/sdk/platform-tools/文件夹


我什至在单独的SDK下载(Windows)中甚至看不到adb.exe?
格雷格,

@Greg-您需要从上面的链接下载Platform-tools,然后将其放在上面的目录中。重新启动您的android studio,它应该可以工作
SolidSnake

哦,好的,所以我下载了单独的“ sdk工具”而不是“平台工具”-谢谢
Greg

@Greg-听起来像是一个不同的问题
SolidSnake

是的:)不知道为什么没有选择/下载带有Studio Tools的Android Studio,但是现在就得到了
Greg

0

如果您有ADB问题,请转到工具-> SDK管理器->安装缺少的SDK工具

我的问题用这些方法解决了


0

我收到错误消息,但是adb.exe仍然可以运行(并且调试正常),因此它不是问题(除了错误消息令人讨厌)。我最好的猜测是,有多个进程试图同时启动该程序。


0

它为我工作(Android Studio 3.1.3):

1.确保已安装“ Android SDK平台工具”

工具> SDK管理器> SDK工具(标签)

2.复制“ adb.exe”文件的路径。通常在这里:

C:\ Users \ Username \ AppData \ Local \ Android \ Sdk \ platform-tools

3.在Windows中打开环境变量

'Window + R'>并输入'SystemPropertiesAdvanced'>环境变量...

4.使用名称“ PATH”和adb.exe路径的创建新的系统变量,例如“ C:\ Users \ Username \ AppData \ Local \ Android \ Sdk \ platform-tools”


1
请不要这样做!!!!!! 它会覆盖您现有的Path变量..,您将丢失所有之前的路径
Haseeb Zulfiqar

0

我为此挣扎了一段时间。尝试在SDK Manager下安装/卸载各种软件包,但未成功。我什至删除了Android Studio并重新安装,但并没有帮助。

我在OS X 10.14.2上运行Android Studio 3.3。最后,我尝试了以下操作:

rm -rf Library/Android/sdk

这将删除整个sdk文件夹。您应该在终端的主目录中运行此命令。(这是您打开时的默认位置)

然后,我启动了Android Studio,但找不到sdk。因此它提示我下载它。我下载了一个新的SDK,一切正常。

这可能是一个过大的杀伤力,但它确实起作用。


0

您可以从终端或cmd这样下载:

$sudo apt update 
$sudo apt install android-tools-adb android-tools-fastboot

//check version or test adb is running or not
$adb version

0

我知道这很愚蠢,但是就我而言,当我收到相同的错误消息时,只需更改用于连接设备的USB电缆即可解决问题:O

也许这也可能使其他人受益?


0

我的Android Studio版本3.6.1

更新最新版本后,我已经遇到了几个小时的问题。我要解决的步骤:

->更新了sdk平台工具[虽然还没有获取我的设备]

->更改USB电缆,然后我的2个设备都已与Studio连接并成功运行我的应用程序。

我不知道这个愚蠢的步骤可能会帮助任何人,但U可以对此进行看看。我只是分享我的经验,谢谢。


0

对我来说,我切换到zsh作为Mac上的默认外壳。切换回去并重新开始修复它。


0

它将发生在

没有足够的空位

可用于adb启动模拟器。

只需在SDK父目录中释放一些空间(6 GB)即可。

如果Dose无法正常工作,请尝试此处所述的其他方法。


-1

看到这些服务结束后,请打开任务管理器并找到服务adb.exe,然后再次运行

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.