ddms: 'adb.exe,start-server' failed ― run manually if necessary, Android Studio

匿名 (未验证) 提交于 2019-12-03 01:18:02

问题:

My adb is down, no matter I am using ADT or Android Studio.

And according to the second answer of this SO question, I did:

  1. I type:

    adb nodaemon server

    Output:

    cannot bind 'tcp:5037'
  2. Then netstat -ano | findstr 5037

    I did find a pid of 7416 who listen in 127.0.0.1:5037

  3. I use taskkill /pid 7416 -f to kill it.

  4. I type netstat -ano | findstr 5037 again, I found another pid listens at 127.0.0.1:5037 again!

I guess they are the same, but I have no idea who it is.

Can I simply have a easy way to release this port or change the adb port to another one?

回答1:

In my case I was trying to use genymotion emulator device. With genymotion opened and running, I've tried to run my app in this emulator but I it doesn't worth

In this part I had this error:

'C:\Users\Jose\AppData\Local\Android\sdk\platform-tools\adb.exe,start-server' failed -- run manually if necessary

Then I've tried Jaskey's solution but it doesn't works.

So I stopped genymotion emulator. Then I restart ADB (Tools > Android > Unchecked Unable ADB Integration then I've checked again)

Next I've start genymotion emulator again And now the app works on the emulator.



回答2:

Sometimes there are conflicts between ADB Genymotion and ADB SDK because both of them use the same port. So I recommend always set up ADB Genymotion to use the ADB SDK, in that way to avoid incompatible issues.

Genymotion-> Settings -> ADB -> Use custom Android SDK tools (here your set up your sdk android location).



回答3:

I solve this problem at last! I finally found the program name of the pid and I kill it in the task manager.

The way to detect is described in the question:

  1. adb nodaemon server

Output:

cannot bind 'tcp:5037'

2.and then netstat -ano | findstr 5037 to find who takes this port.

Get the pid and find it in the task manager. Please note that the process tab may not show the column of pid, we should include it by setting.

In my case, it is tfadb.exe who takes this port! This is a Chinese Video program client! Try to kill it in task manager.

Now I stop it starting from booting. The problem is solved.



回答4:

For Windows,

Close Android Studio and any of your Emulators you are using,

then goto->TaskManager and Kill the process(adb.exe)

After finishing all these First open Android studio followed by emulators.



回答5:

disconnect any usb connected android devices. I was tethering to my laptop via my cellphone for internet connection. I got the adb start server failed error with loopback error "port is only used for one socket connection".

I disconnected my cellphone usb connection from my laptop and now android studio recognizes my genymotion emulator and another android device I have connected via usb in the deployment target box.



回答6:

I solved by End task "adb.exe" background process from task manager. and Start adb thats it :)



回答7:

Open the Genymotion emulator after opening The Android studio.



回答8:

if genymotion or emulator not working try to install pdanet+ in your system and mobile device choose your mobile type(motorola,sony,other)it will automatically install driver and run your application in mobile device.



回答9:

in my case one application on window use adb.exe.

that application name is mobogenie.

Fixed :: Goto Window TaskManager select adb.exe and press End process



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!