19

I am getting this error since two days ago when I updated my Android Studio to the latest stable version 2.3; the full error message I am getting from Gradle Console is:

07:59:59 E/adb: error: could not install *smartsocket* listener: Address already in use
07:59:59 E/adb: ADB server didn't ACK
07:59:59 E/adb: * failed to start daemon *
07:59:59 E/adb: error: cannot connect to daemon
07:59:59 E/ddms: '/Users/USER_NAME/Library/Android/sdk/platform-tools/adb start
server' failed -- run manually if necessary

My attempts to solve the issue:

  • kill all adb processes and make sure no process is holding port 5037, adb kill-server (says * server not running * even in cases when adb is running), close Android Studio, delete ~/.android directory, run adb start-server (says * daemon not running. starting it now at tcp:5037 *; * daemon started successfully *, start Android Studio and run application, MAC throws error adb quit unexpectedly and gradle console shows same the error I posted above.

  • uninstalled and deleted all Android Studio stuff (except for projects directory), restarted MAC, installed fresh and latest android studio.

  • increased gradle vm ram org.gradle.jvmargs=-Xmx1536M in project gradle.properties

  • uninstalled antivirus and restarted the mac

Environment:

  • OS: MacOS Sierra 10.12.3
  • Android Studio: 2.3
  • buildToolsVersion: '25.0.0'
  • Android Debug Bridge version: 1.0.39
kennytm
  • 469,458
  • 94
  • 1,022
  • 977
PeaceDefener
  • 580
  • 1
  • 7
  • 22
  • Try reinstalling (i.e. uninstalling and installing again) `platform-tools` from within `Android Studio SDK Manager`. You might run `adb` command in shell between those actions to make sure `ADB` wasn't duplicate-installed in your system. – Onik Mar 30 '17 at 18:51
  • Hi @Onik, I uninstalled `platform-tool` then ran `adb` on terminal. It says the command not found. So I think there's noduplicates – PeaceDefener Apr 01 '17 at 06:10

5 Answers5

10

Address already in use means you have another instance of adb running. Check your system variable $PATH and $ANDROID_HOME and local.properties file (of your project) and your .bash_profile . Make sure that all of these has same android sdk path. Then try restarting the adb server. adb kill-server and adb start-server.

JIthin
  • 1,309
  • 1
  • 11
  • 28
  • Thanks JIthin, I always saw one instance of `adb` in Activity Monitor. Then I created a new user on my MAC and installed Android Studio and it worked. I figured it out it is has to do with `$PATH` and digged into `.bash_profile` `.bashrc` `.profile` `.zshrc` `.zlogin` and cleaned up duplicates and it works. Thanks again. – PeaceDefener Apr 05 '17 at 19:49
2

I read that you killed the adb, but as this answer says How to resolve the "ADB server didn't ACK" error? did you do that from the platform-tools folder? If your answer is yes, update the Android SDK to the lastest version via the SDK manager and update the $ANDROID_HOME

I hope it helps!

Community
  • 1
  • 1
Jaco
  • 758
  • 2
  • 11
  • 25
  • Hi @Jaco, the first link doesn't resolve the issue on my MAC; see [the log](https://pastebin.com/aCrTTGT2). As for the second link, SDK path is already set, and I created and exported a custom path, installed the tools, and changed it in Android Studio, but still no luck – PeaceDefener Mar 30 '17 at 01:00
1

I usually find this issue occurring when I have two instances of ADB working, i.e when I have my Eclipse and Android studio running at the same time AND when they point to different SDK Manager(platform-tools folder) on the system. Try to search for what other IDE is using ADB, kill it in the Activity Monitor and run only one instance. Or my work around was to have only one SDK Manager and point both my IDEs to one platform-tools folder.

Hope that helps.

Neha
  • 17
  • 1
  • 2
1

In my case, I had an old version of adb installed using brew cask. And while I updated my Android Studio to the latest, the adb was still pointing to the brew installed older version.

So after updating that version, using:

brew cask install android-platform-tools

And making sure that the adb itself was pointing to the new version, the errors went away.

Edward Tan
  • 824
  • 9
  • 15
-1

Just write down platform-tools path (/Users/USER_NAME/Library/Android/sdk/platform-tools) In the .bash_profile file, located at (/Users/USER_NAME/.bash_profile), like this :

export PATH="$PATH:/Users/USER_NAME/Library/Android/sdk/platform-tools"

Nico Lopez
  • 66
  • 4