亚行找不到我的设备/电话(MacOS X)


178

在Mac和我拥有的这款非常新的手机上进行Android开发不会出现在adb的设备列表中。许多其他电话和设备对我来说都可以正常工作,所以我知道我的设置很好。

我已经在手机上启用了调试功能(设置->应用程序->开发-> USB调试),但是在运行时却没有显示 adb devices


对于任何使用三星手机苦苦挣扎的人,我发现我必须安装Kies才能使该设备被识别
DevDave 2013年

8
当您进行USB调试时,应该使用PTP而不是多媒体(MTP)
aurny2420289 2015年

Answers:


349

附加更新:不要低估一根好的USB电缆的价值。有时仅交换电缆会有所帮助。

~/.android/adb_usb.ini必须删除更新版本的adb的更新

执行摘要: 将供应商ID添加到~/.android/adb_usb.ini并重新启动adb

详细信息: 大多数情况下,无需做任何操作即可使Mac识别手机/设备。严重的是,有99%的时间“有效”。

话虽如此,重置adb的最快方法是依次使用以下命令重新启动它:

  adb kill-server
  adb devices

但是adb devices命令有时却无法找到您的设备。也许如果您正在使用某些实验性或原型性或非常规设备,也许它只是未知的而不会出现。

您可以通过告诉adb设备的“供应商ID”来帮助adb查找设备,从本质上为它提供提示。可以通过在文件中添加十六进制供应商ID来完成~/.android/adb_usb.ini

但是首先,您必须找到供应商ID值。幸运的是,在Mac上,这非常容易。启动系统信息应用程序。它位于/Applications/Utilities/文件夹中,或者您可以通过屏幕左上角的Apple Menu 进入该文件夹,选择“关于本机”,然后单击“更多信息...”按钮。屏幕抓取在这里:

System Information, Hardware USB tree

展开“硬件”树,选择“ USB”,然后寻找目标设备。在上面的示例中,我的设备名为“ SomeDevice”(我在photoshop中这样做是为了隐藏真实的设备制造商)。另一个示例是显示为“ SAMSUNG_Android”的三星平板电脑(顺便说一句,我不必做任何特殊的事情即可使三星平板电脑正常工作。)无论如何,单击您的设备,所有详细信息将显示在下面的窗格中。此处列出了供应商ID。在我的屏幕快照示例中,该值为0x9d17-在下一个命令中使用此值

echo 0x9d17 >> ~/.android/adb_usb.ini

没关系,如果您之前没有该adb_usb.ini文件就可以了,在大多数情况下,只是不需要查找设备,因此该文件不存在也很常见。上面的命令将创建它,或者如果它已经存在,则追加到它的底部。现在运行上面列出的命令来重新启动adb,您应该一切顺利。

adb kill-server ; adb devices

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
123ABC456DEF001 device

2
我差一点就只用“执行摘要”一词来投票给您,但是当您最终解决我的问题时,我决定改为投票给您:-)
Jason Whitehorn

20
对我来说,是电缆-非常感谢
Dan Green-Leipciger 2015年

9
这是电缆,我不敢相信,但indipad桌子随附的电缆不起作用!
塞缪尔

4
对我来说也是电缆!我正在搜索有关驱动程序和配置文件的内容,但这仅仅是电缆!感谢您的最新消息
-Darksider

4
电缆问题也在这里。谢谢!
JakobMillah '16

46

适用于OS X的Nexus 4和Nexus 5的解决方案

运行时,“连接的设备列表”中没有列出任何设备:adb devices

固定:

  1. 从获得SDK(最新版本) developer.android.com
  2. 将开发人员模式置于nexus 4上(关于电话>内部编号>点击7次以进入开发模式)
  3. 新的菜单选项将出现在'Settings'{}开发人员选项中
  4. 确保在{}开发人员选项下检查以下各项:
    • USB调试:连接USB时的调试模式(接受RSA指纹弹出窗口)
    • 通过USB验证应用程序:检查通过ADB / ADT安装的应用程序是否有害

尝试从./adb设备列出您的设备,它应该可以工作。

答案来自:任何想法,为什么adb无法在Mac上识别我的nexus 4


43

如果安装了应用程序EasyTether,则可能会干扰ADB。

在此页面上,您可以执行以下命令:

sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext 

这将卸载您的EasyTether扩展程序。

如果您需要重新启用EasyTether进行网络共享,我相信您可以使用:

sudo kextload /System/Library/Extensions/EasyTetherUSBEthernet.kext 

这适用于我的三星Galaxy S2。就我而言,每次重新启动时都必须执行kextunload命令。


1
该死的,谢谢!忘了我三周前安装了这个废话!
Benoit Jadinon

非常感谢您……这正是我的问题
tylerjw 2014年

是的,这是一个令人头疼的问题。在Mac上安装简易系绳后,eclipse IDE中未显示已连接的android设备。当我执行sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext时,此命令也是如此。但没有任何帮助我弄清楚连接的设备问题...我还从系统偏好设置中删除了EasyTether网络连接。
Android_kalai 2014年

从来没有安装过EasyTether的东西,但是在我禁用它之后,它就可用于adb设备。现在我必须使fastboot设备能够工作...
Cristian

我曾在-EasyTether -ages-以前忘了安装它。这对我有用。
森特·格拉维塔斯(Vicent Gravitas)2014年

32

如果您使用以下设备:
Samsung S3 GT-I9305(Android 4.1.2)
Mac OS 10.6.8

请执行以下操作:

# echo "0x04e8" >> ~/.android/adb_usb.ini
# adb kill-server
# adb devices

(如果您不使用三星设备,请将供应商ID“ 0x04e8”更改为供应商的正确值)

如果仍然无法使用,您可能需要尝试以下操作:

(1)在您的Samsung设备上,禁用“ USB调试”并再次将其重新启用
(然后尝试使用adb命令)

(2)断开USB电缆,然后再次重新连接

(3)卸载Samsung Kies

(4)安装Android文件传输

(5)重新启动Mac和Samsung设备

(6)使用硬件设备测试您的Android应用

连接设备后,您突然拔下USB电缆,并假设现在即使在“ adb kill-server”之后,“ adb设备”也无法再看到您的设备,在这种情况下,您可能需要尝试以下方法:

(1)关闭Mac的电源
(2)禁用三星设备上的“ USB debuggine”
(3)关闭三星设备
(4)打开Mac的
电源(5)打开三星设备的电源
(6)启用“ USB debuggine”在Samsung设备上
(7)连接USB电缆
(8)运行“ adb设备”
(9)现在应该看到连接的设备


2
我本来打算专门针对与供应商的链接来回答这个问题,但是该链接尝试安装广告软件。我没有尝试其他链接,但是我确定它们所做的相同。
Jim Gilmartin

为我工作的Mediacom S2平板电脑。Console.app在连接设备时显示供应商ID: 13/02/14 11:17:27,000 kernel[0]: USBMSC Identifier (non-unique): 0123456789ABCDEF 0x2207 0x10 0x222, 2 在这种情况下,VendorID为0x2207
psychowood

1
拒绝投票,因为指向Android File Transfer的链接是广告软件。请改用此链接:android.com/filetransfer
kand 2014年

最新的10个步骤是我要寻找的程序。谢谢!
MaxSC 2015年

没有什么对我有用。在恢复模式下仍找不到我的gs7
ronaldosantana

27

我有一个类似的问题。我发现OSX不支持MTP。我将其更改为PTP,被提升为批准我的笔记本电脑,然后我的设备最终上市(LG G3)。

enter image description here


1
LG G2,不得不选择PTP。谢谢!
user1112008

1
阿尔卡特OneTouch Idol 3已默认设置为“ 充电”模式,但由于持续不断的USB调试连接通知而误导了我。我必须滚动经过误导性的启用USB调试开关,然后打开“ 选择USB配置”菜单。
AWrightIV '17

这对我有用-请注意,要进入此菜单,您可能需要启用USB调试,然后从顶部的通知栏中点击USB连接对话框,然后从MTP切换到PTP。之后,您将看到一个对话框,接受与计算机的连接。
DiscDev

一样!必须切换到Transfer photos (PTP)Nexus 5X。
soshial

对我来说,我需要将“使用USB用于”从更改( ) Transferring files(*) USB tethering。我从电话主屏幕上的“通知”下拉菜单中访问了此选项。
克里斯,

25

信不信由你,换USB电缆为我解决了这个问题。我一直在使用随机的设备(这不起作用),并且当我切换到实际的Android设备附带的设备时,它就可以工作了。

良好连接线正常工作的另一个迹象是,Android File Transfer应用程序立即启动,但the脚的连接线并没有发生这种情况。


如果计算机偶尔停止检测到您的设备,则将USB电缆插入不同的USB端口也可能会解决“ adb设备”问题。
user908643

3
这也对我有用。不敢相信我在此上浪费的时间...
bengoesboom 2014年

我也遇到了,我也不知道它是如何工作的。USB电缆是USB电缆-充电正常,为什么ADB无法正常工作?那是一些怪物镀金的电缆魔术东西:(
VitalyB '16

15

还要确保您没有使用仅用于充电的USB电缆。这就是我。它实际上被标记为“仅用于充电”


我完全没想到这个解决方案,但是是的,改变了我的USB电缆,并且有我的设备。.:/:/
Ajeet Pratap Maurya 2014年

对于普通的USB,两个触点用于数据,两个触点用于电源。那些“仅用于充电”的电缆可能会通过省略数据连接来降低制造成本。
mcduffee 2014年

谢谢,我遇到了同样的问题。我从便携式充电器使用USB到microUSB电缆,以为那是标准电缆,但我想它实际上仅用于充电。将其换成普通的USB到microUSB电缆,即可正常工作。
乔丹

12

就我而言,这是因为USB电缆。

我发现USB电缆有两种类型:

  • 那些只供电的
  • 那些可以供电并可以传输数据的设备

而且很难知道USB电缆是什么类型。现在,我在电缆上进行数据传输。


90%的时间对我来说是问题所在。感谢您的反馈。
deepelement

11

只有在手机上启用开发人员USB调试后,这才对我有用:

在您的android手机上,转到“设置”>“关于”,然后反复点击“内部版本号”,直到启用“开发人员选项”。


3
这并单击Settings->Developer Options->USB Debugging似乎已经完成了窍门。.我使用的是AstroTab w / 5.0。谢谢!
Gene Bo

这是事情对我来说。现在,也adb devices表明我的三星Galaxy A5 2015
jonashackt

9

请注意任何无法使用的建议

尝试启动Console.app并在插入设备时观察错误。我正在

# The IOUSBFamily is having trouble enumerating a USB device that has been plugged in. It will keep retrying.

重新启动后它仍然存在,因此我最终重置了我的PRAM,这又使它重新工作。

如何执行参数重置

  1. 完全关闭机器。
  2. 短暂按下电源按钮
  3. 按住Command + Option + P + R
  4. 等到第三次听到启动音
  5. 释放所有键,让机器继续完全启动

我有同样的问题“ IOUSBFamily枚举USB设备时遇到问题”。我尝试了所有可能的解决方案,甚至PRAM RESET。不适用于我:(还有其他建议吗?以前一切正常,现在突然我的3个设备都没有被识别。正在为三星设备充电,为Nexus 4充电了
。– nia

谢谢 !我尝试了前6个答案,但没有任何效果。最后,您的解决方案效果很好。您的解决方案应添加到最受好评的答案中。
MaximeBernard 2014年

@MaximeBernard-您是否也收到Console.app错误,或者只是重置了PRAM?
维克

8

这是另一件事,如果像我一样,您已经尝试了所有其他答案,但是没有运气。

以我的情况(Android 4.3)为例,我进入了通知下的USB设置,并从MTP模式(媒体设备)更改为PTP(相机),并且一旦切换,该设备就会显示在ADT设备列表中。


救命!谢谢,立即为我的LG L90(D415)工作!
雅各布·普里切特

5

使用较新的adb版本,您必须删除 ~/.android/adb_usb.ini


2
rm .android / adb_usb.ini; adb kill-server; 亚行设备
marbdq 2014年

5

只需更换电缆并授权Mac就可以了!


2
几次都发生在我身上,那是电缆-可能只是用于充电而不能用于数据传输
约翰·泰纳

我也是; 检查电缆。
Lucien Dubois

4

我遇到了相同的问题,以下内容解决了该问题。

  • 确保您的手机已启用USB调试。
  • 安装Android文件传输
  • 您将在手机上收到两个通知,以允许连接的计算机访问,而另一个通知则允许访问设备上的媒体。同时启用两者。
  • 现在,如果您在终端中键入“ adb设备”,您的电话将被识别。

2
打开Android File Transfer为我完成了工作,谢谢!
crgarridos

3

以防万一将来对某人有帮助,我在启用/禁用“显示布局边界”时不小心关闭了设置中的“ USB调试”。因此,首先在“开发人员选项”中检查此设置。


我需要先关闭此功能,然后再打开以使用Mac进行修复。
MattD


3

现代Android的另一个棘手的事情是,您可以通过选择设备的“用于”来设置设备的行为。

例如,如果将其设置为“用于”充电,则亚行不会检测到该设备。切换到PTP / MTP的其他“活跃”行为将自动神奇地使您的设备可检测。


如果我在设置中将USB首选项设置为PTP,它们都将变灰:|
user347187

2

另外,请确保检查供应商网站上的“ USB”驱动程序。我的AT&T Galaxy Note(运行Android 2.3.6)遇到了这个问题,如果没有安装从三星网站获得的驱动程序,adb就无法识别它。


2

如果您尝试检测三星s3,请在电话上转到设置->开发人员选项->确保选中了USB调试


我是android开发人员,每天与Galaxy Nexus等工作。不知何故,USB调试被自己取消了选择,从半小时前开始,没有更新,没有任何变化。我已再次启用它并可以正常工作。这给了我检查的线索,谢谢。
Nemanja Kovacevic





1

经过以上所有尝试,最后遗漏的是在“开发人员选项”中启用USB调试,该功能已隐藏在我的4.4 Galaxy Note 10.1中。

请参阅链接中的项目5.2 。


如果链接断开,您能否总结一下链接?
matsjoyce 2014年

1

在Mac OS X Lion设置上,以上所有技巧均无用。我有运行2.3.6的Motorola手机。原来,我需要为摩托罗拉手机安装驱动程序。我在这里找到他们。


1

上面的答案对我都不起作用。在macOS Mojave上,打开控制台应用程序,您可能会看到如下错误:

001076.240057 adb@(null): IOUSBUserClientLegacy::start: missing entitlement com.apple.appledfr.client

即使重置mac PFRAM也无济于事。要解决此问题:

  1. 通过USB电缆连接Android设备(双USB-C电缆对我有用)。

  2. 转到设置-> ..->开发人员选项,然后单击撤消USB调试授权

  3. Android手机将重新启动。

  4. 转到设置-> ..->开发人员选项,并确保已启用USB调试

  5. 现在在macOS终端中输入:

    adb devices
  6. 您可以看到列出的设备。

它适用于我的Google Pixel 2手机。


几乎对我来说是一样的,但是您所描述的这种方式有时会帮助您,有时会帮助您更改USB套接字,但是最终它陷入了卡住状态,直到mac mac重新启动后,我的设备才会不断出现。您知道到底发生了什么吗?
busylee

0

我曾经有一段时间的魔鬼。

我尝试了这种方法,但是没有用。我最终关闭了USB调试功能,然后设备请求安装motocast

它尝试使用内置安装程序,但由于下载而崩溃。手动下载并安装后,便可以了。

我正在运行10.6.8,并且该设备是正在运行3.2.2的Xoom 2

安装之后,它运行良好。


0

万一像我一样,以上都不对您有用,我想出了一个非常愚蠢的解决方案。

我在2011 Macbook Pro上使用HTC OneX。我只是在“设置”>“无线和网络”>“更多”>“ NFC和中提琴”中禁用了NFC!工作正常。


0

我已经看到了这个问题,并在stackoverflow和其他站点上尝试了所有解决方案,但是没有任何帮助。

我已经重新启动了adb,打开了开发人员模式并激活了usb调试,卸载了三星kies,甚至将usb电缆交换到了不同的端口。

但后来我在某处读到,不同的USB电缆使用不同的引脚连接到便携式计算机或计算机。
所以我用不同的USB电缆将我的三星手机连接到Mac ..并誓言它对我有用...


0

就我而言,未在设备上启用USB调试,但将设备连接至Macbook并不会导致屏幕上弹出熟悉的“允许USB调试”对话框。


对于有此问题的任何人(例如我过去几个小时都来过),您需要做的就是按照eltima.com/wiki/user-guides/syncmate/usb-debugging-android.html下网站的说明进行操作 说明远达Android v4.0。我已经搜寻了互联网,搜索了“ Android无法连接到Mac”之类的信息,并提出了要求启用USB调试模式的所有解决方案,但都没有说明如何访问此选项。经过3个应用程序和5个安装之后,由于一个名为SyncMate的应用程序,我找到了该网站。我现在要放松身心并享受圣诞节。
蓬松的塞伯特'18
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.