28

I'm running into an issue with the android SDK where it doesn't recognize devices plugged in via usb:

$adb start-server                                 
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
$adb devices                                      
List of devices attached

(list is empty, other sdk tools don't recognize the devices either)

According to the SDK documentation, on Mac OS X, this should "just work". (Setting up a Device for Development)

It's worked for me in the past, but seems to have just stopped. Is there an OS X solution to this problem? (On other operating systems presumably you have to fiddle with USB drivers)

Have tried:

  • Power cycling machine and device
  • Switching USB ports Unplugging all
  • USB except for the sole (non-split)
  • cable to the device Multiple cables
Purrell
  • 12,461
  • 16
  • 58
  • 70

6 Answers6

21

Another thing for people searching who are still stumped (as I was for some time)...

I had this exact same issue and just figured out what helped for me. I had installed EasyTether and it was interfering with this even after I thought I uninstalled it.

Here's the solution from the EasyTether website:

ADB on Mac OS X stops recognizing the attached device after installing EasyTether driver. Use kextload/kextunload to unload from memory the EasyTetherUSBEthernet.kext kernel extension manually. It is in /System/Library/Extensions/

chaimp
  • 16,897
  • 16
  • 53
  • 86
  • 2
    Awesome this fixed my problem! <3 stackoverflow – Nelson Ramirez Apr 28 '11 at 03:27
  • 1
    Thanks! This prevented me from running my head through a wall! – Jeff Feb 09 '13 at 21:25
  • Yes it's an my headache problem.after installing easy tether to mac connected android device not shown in eclipse IDE.When i am executing sudo kextunload /System/Library/Extensions/EasyTetherUSBEthernet.kext this command too.But nothing helps me to figure out the connected device problem...I also removed EasyTether network connection from System Preferences. – Android_kalai Jul 03 '14 at 11:25
  • I was using http://joshuawise.com/horndis for tethering and had the same issue. removing it seem to have solve my problem. – lbrutti Aug 20 '14 at 23:04
18

I had this problem, turned out to be a bad cable not connecting properly.

Derek Johnson
  • 191
  • 1
  • 2
14

Note that the setting for "USB Debugging" on the devices seems to unset under certain conditions. In my case this is what happened... So if you come across this for OS X, hopefully that is your issue, otherwise perhaps try the steps above. To enable USB Debugging:

  • Settings --> Applications --> Development --> USB Debugging.
Purrell
  • 12,461
  • 16
  • 58
  • 70
  • 5
    I encountered the same problem after updating my phone. It was confusing because the USB Debugging setting was still checked and the phone would say "USB Debugging connected" when I connected it. As soon as I disabled and re-enabled USB Debugging it started working again. – default.kramer Dec 14 '11 at 05:37
  • This also applies to Windows! – Steve Tauber Oct 13 '12 at 08:18
  • 2
    I had to uncheck and check it again. Then when I ran adb devices, it showed up. – aharris88 Apr 15 '14 at 21:49
11

For completeness, I often find that running adb kill-server followed by adb devices will often cause the offending device to show up again. For some specific devices (eg. my Thunderbolt) I've also found I need to physically unplug the USB from the thunderbolt and plug it back in again.

emmby
  • 99,783
  • 65
  • 191
  • 249
  • I can attest to this, restarting the adb server made my device start appearing in adb after rebooting, replugging etc all didn't work. – Owen Jun 10 '13 at 10:26
2

I can second the point regarding easytether. Calling kextunload didn't seem to make a difference, but after also removing the EasyTether network connection from System Preferences, my device does indeed appear when i call "./adb devices"

Elroid
  • 476
  • 4
  • 12
-2

This worked for me on my mac:

Declare your application as "debuggable" in your Android Manifest.

In the AndroidManifest.xml file, add android:debuggable="true" to the element.

Note: If you manually enable debugging in the manifest file, be sure to disable it before you build for release (your published application should usually not be debuggable).

http://developer.android.com/tools/device.html

noonan
  • 37
  • 3
  • I guess writing a comment would be helpful when downvoting. I'm not sure what to do with this :/ – vinyll Apr 02 '18 at 13:56