adb找不到我的设备/手机(MacOS X)

在Mac和这个非常新手机上进行Android开发,我没有显示在亚洲开发银行的设备列表中。很多其他的手机和设备对我来说都很好,所以我知道我的设置是好的。

我在手机上启用了调试(设置—>应用程序—>开发—> USB调试),但当我运行adb devices时,它不显示

302153 次浏览

重要更新:正如@equiman所指出的,有一些USB电缆只用于充电,不传输数据。有时交换电缆也会有帮助。

更新对于某些版本的adb, ~/.android/adb_usb.ini必须被删除。

执行概要: 将Vendor ID添加到~/.android/adb_usb.ini并重新启动adb

< >强全部细节: 大多数情况下,不需要做任何事情就可以让Mac识别手机/设备。说真的,99%的情况下“它就是有效”。

也就是说,重置亚洲开发银行的最快方法是按顺序使用以下命令重新启动它:

  adb kill-server
adb devices

但是时不时地adb devices命令就是找不到你的设备。也许如果你正在使用一些实验性的或原型的或不寻常的设备,也许它只是未知的,不会出现。

您可以通过告诉adb您的设备的“供应商ID”来帮助adb找到您的设备。本质上是给它一个提示。这可以通过将十六进制供应商ID放在文件~/.android/adb_usb.ini中来实现

但是首先您必须找到Vendor ID值。幸运的是,在Mac上这很简单。启动< >强系统信息< / >强应用程序。它位于/Applications/Utilities/文件夹中,或者你可以通过屏幕左上角的苹果菜单找到它,选择“关于这台mac”,然后点击“更多信息”。按钮。截图如下:

系统信息,硬件USB树

扩展“硬件”;树,选择"USB",然后寻找您的目标设备。在上面的例子中,我的设备名为“somedevice”;(我在photoshop中隐藏了真正的设备制造商)。另一个例子是三星平板电脑,显示为“SAMSUNG_Android"(顺便说一下,为了让三星平板电脑正常工作,我没有做什么特别的事情。)无论如何,点击你的设备,完整的细节将显示在下面的窗格中。这是它列出Vendor 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

此外,确保你在供应商的网站上查看他们的“USB”驱动程序。我在我的at&t Galaxy Note(运行Android 2.3.6)上遇到了这个问题,如果没有从三星网站上获得的驱动程序安装,adb无法识别它。

如果您已经安装了EasyTether应用程序,这可能会干扰ADB。

从这个页面你可以执行命令:

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

这将卸载您的EasyTether扩展。

如果您需要重新启用EasyTether进行系链,我相信您可以使用:

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

这在我的三星Galaxy S2上很有效。在我的例子中,每次重新启动时都必须执行kextunload命令。

我花了很长一段时间。

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

它试图使用内置安装程序,但它一直崩溃超过下载。在我手动下载并安装它之后,我就可以做到这一点了。

我运行的是10.6.8,设备是运行3.2.2的Xoom 2

安装之后,它工作得很好。

在我的Mac OS X Lion设置中,上面的建议对我都不起作用。我的摩托罗拉手机运行2.3.6。原来我需要为摩托罗拉手机安装驱动程序。我发现他们在这里

对于较新的adb版本,你必须删除~/.android/adb_usb.ini

如果你试图检测三星galaxy s3,那么在手机上去设置->开发人员选项->确保usb调试是选中的

信不信由你,换USB线帮我解决了这个问题。我一直在用一个随机的Android设备(它不起作用),但当我换到一个真正的Android设备上时,它就起作用了。

另一个好的电缆起作用的迹象是,Android文件传输应用程序立即上线,而蹩脚的电缆却没有做到这一点。

如果您正在使用以下设备 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)在您的三星设备上,关闭“USB调试”并重新启用它 (并再次尝试adb命令)

(2)断开USB线,重新连接

(3)卸载Samsung Kies

(4)安装Android File Transfer

(5)重新启动你的Mac和三星设备

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

在连接设备后,但你突然拔掉USB线,假设现在“adb设备”再也看不到你的设备了, 即使在“adb kill-server”之后,在这种情况下,你可能想尝试以下:

(1) power off your Mac
(2)在三星设备
上禁用“USB调试” (3)关闭您的三星设备
(4)打开你的Mac
(5)打开三星设备
(6)在您的三星设备上启用“USB调试”
(7)连接USB线
(8)执行命令"adb devices"
(9)您现在应该看到附加的设备

< / p >

此外,请确保您使用的USB电缆不是仅用于充电。这真是难倒我了。而且它的标签上写着"仅供收费"

注意到那些不能得到任何这个建议工作的人

尝试启动控制台。应用程序和观察错误,当你插入你的设备。我正在

# 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. 松开所有按键,让机器继续完全启动

万一你像我一样,上面这些方法都不管用,我想出了一个非常愚蠢的解决办法。

我在2011年的Macbook Pro电脑上使用的是HTC One X。我刚刚在设置中禁用了NFC >无线&网络>更多> NFC和中提琴!工作正常。

针对OS X的Nexus 4和Nexus 5的解决方案

当我运行:adb devices时,在“附加设备列表”中没有列出任何设备

解决办法:

  1. developer.android.com获取SDK(最新版本)
  2. 在nexus 4上设置开发模式(关于手机> Build Number >点击7次进入开发模式)
  3. 'Settings': {}开发者选项中会出现一个新的菜单选项
  4. 确保你检查了{}开发者选项下面的内容:
    • USB调试:USB连接时的调试模式(接受RSA指纹弹出)
    • 通过USB验证应用程序:检查通过ADB/ADT安装的应用程序是否存在有害行为
    • 李< / ul > < / >

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

答自:知道为什么adb在mac上不识别我的nexus 4吗

如果你像我一样尝试了所有其他的答案,但都没有运气,那么还有一件事可以尝试。

以我为例(Android 4.3),我在通知下进入USB设置,从MTP模式(媒体设备)切换到PTP模式(相机),一旦切换,设备就出现在ADT设备列表中。

尝试了以上所有方法,最后一个不足之处是在我的4.4 Galaxy Note 10.1中隐藏的开发人员选项中启用USB调试。

参见 link中的第5.2项。

这该死的奇怪,但只要把USB端口插入我2014年年中的MBP上的Thunderbolt端口旁边的Retina就可以了!

另一个USB端口根本无法识别设备。

这只适用于我在手机上启用开发人员usb调试后:

在你的android手机上,进入“设置”>“关于”,然后反复点击“构建号”,直到启用“开发人员选项”。

为了以防将来它能帮助别人,我在启用/禁用“显示布局边界”时不小心关闭了设置中的“USB调试”。所以,首先在“开发人员选项”中检查这个设置。

在LG G3上,我能够通过homebrew (在MAC OS X上安装ADB)安装ADB,然后禁用/启用USB调试来让它工作。

尝试重新启动(如果之前检测到它并且停止显示)- 所有解决方案之母!

我已经看到这个问题,并尝试了stackoverflow和其他网站上的每一个解决方案,但没有帮助我。< br > < br > 我重启了adb,打开了developer模式,激活了usb调试,卸载了samsung kies,甚至把usb线换到了不同的端口。 < br > < br > 但后来我在某处读到,不同的usb线连接笔记本电脑或电脑时使用不同的引脚。< br > 所以我用不同的usb线连接我的三星手机和mac ..我发誓,这是有效的…对我来说…< / p >

我也遇到了同样的问题,接下来就解决了。

  • 确保你的手机开启了USB调试。
  • 安装Android文件传输
  • 您将在手机上收到两个通知,允许连接的计算机访问,另一个通知允许访问设备上的媒体。使两种。
  • 现在,如果您在终端中输入“adb devices”,您的手机将被识别。
我也有类似的问题。我发现OSX不支持MTP。 我把它改成了PTP,我被提拔审批我的笔记本电脑,然后我的设备终于上市了(LG G3)

enter image description here

对我来说,是因为USB线。

我发现有两种类型的USB线:

  • 那些只提供电力的
  • 能够供电和传输数据的

而且很难知道USB线是什么类型。现在我用数据传输在电缆上做了一个缺口。

以我为例,我的设备上没有启用USB调试,但将设备连接到macbook上时,屏幕上并没有弹出熟悉的“允许USB调试”对话框。

我试图连接一台旧手机,我用它来测试旧API版本上的应用程序。今天,亚行没有发现这一点。

在这里尝试了几乎所有的东西之后,我发现手机甚至没有显示USB连接正在进行的系统通知。

所以我四处寻找这个问题,并找到了解决方案在这里 (credit to the original source):

  1. 从电脑上拆下手机,取出电池关机。
  2. 将USB线插入PC。
  3. 将USB线(另一端)插入手机。
  4. 电脑安装新的硬件合适的驱动程序几分钟(手机没电)
  5. 拔下手机USB线
  6. 把电池放回去,打开手机
  7. 开机时,按“音量”键。手机进入安全模式。
  8. 将USB线插入手机。
  9. 我看到手机上有USB mtp连接的通知。电脑找到我的手机了!
  10. 正常模式重启后问题被修复

不确定第四步。在macOS上没有任何用处,但是我做了所有的步骤,它工作得很好。

我切换到不同的USB端口,这使它显示在adb设备列表中。

在这里提出的所有解决方案中,这是唯一对我有效的方法。它是由@user908643在评论中提出的。

现代Android的另一个棘手之处在于,你可以通过选择设备的“用途”来设置设备行为。

例如,如果它被设置为“用于”充电,设备将不会被ADB检测到。切换到PTP/MTP其他更“活跃”的行为会自动让你的设备被发现。

简单地更换电缆和授权Mac对我有用!

除了红米说明4 .单击“确定”中的USB debugging,我还必须启用USB debugging (Security settings)开发人员选项。

对我来说,这是有效的,我有一个华为设备,我必须从AppStore安装HiSuite,按照它的说明启用HDB,然后在我的手机中将USB模式改为PTP,我开始看到一些关于授权设备的弹出窗口,之后adb devices检测到设备。

这只是一个额外的帮助:设备需要直接连接到计算机,将其连接到USB集线器可能会阻止设备提示显示。

上面的答案对我都没用。在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. You can see your device listed.

It worked for my Google Pixel 2 phone.

当我将Android 10设备插入Mac OS时,手机上出现了一个弹出框,上面写着:

Mac操作系统无法访问此设备上的数据,您必须下载文件传输或智能开关。

  1. 下载文件传输https://www.android.com/filetransfer/为android
  2. 下载智能开关https://www.samsung.com/us/smart-switch/三星我猜

虽然不知道为什么这里有两个选择!

我下载了文件传输,即使是三星Note,它也能很好地工作。

注意:我忘了提,首先你必须启用开发人员模式,然后USB调试。

只针对所有iPhone用户。你不能使用实体iPhone,你需要运行Android模拟器。

以防你在iPhone上使用Android Studio。

在启用开发人员模式后重新启动我的一加5T。

我遇到了同样的问题,花了大半天的时间寻找解决办法。但一切都是徒劳的。在第一个回答中,提到了USB线的问题,这没有引起人们的注意。所以如果有人遇到同样的问题,我建议,首先

尝试一些其他USB Cables,因为一些电缆仅用于充电而不是传输数据

如果它不能给你带来好运,那么你可以尝试其他答案。