在Mac上进行Android开发时,我的这部新手机并没有出现在adb的设备列表中。很多其他的手机和设备对我来说都很好,所以我知道我的设置是好的。

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


当前回答

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

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

其他回答

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

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

我花了很长一段时间。

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

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

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

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

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

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

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

Remove phone from PC and remove battery to shut off phone. Plug USB cable into PC. Plug USB cable (other end) into phone. The PC install new hardware appropriate drivers for a few minutes (phone without battery) Unplug USB cable from phone Put battery back in and turn on phone As the phone boots, hold down Volume up and down. Phone boots into safe mode. Plug USB cable into phone. I saw notification about USB MTP-connecting on the phone. PC have found my phone! After the reboot in normal mode problem was fixed

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

对我来说,是因为USB线。

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

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

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

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

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

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

这将卸载您的EasyTether扩展。

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

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

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