This question already has answers here:
adb server version doesn't match this client
(41 answers)
Closed 4 years ago.
I'm on debian buster.
I have genymotion installed and running, and a CRNA app that I'm trying to run. I have Android SDK installed, and set properly in my path.
I have changed the genymotion settings to point to my Android SDK folder.
When I do yarn run android I see
error: could not install *smartsocket* listener: Address already in use
ADB server didn't ACK
* failed to start daemon *
error: cannot connect to daemon
When I do adb start-server I see
adb server version (39) doesn't match this client (36); killing...
error: could not install *smartsocket* listener: Address already in use
ADB server didn't ACK
* failed to start daemon *
error: cannot connect to daemon
I have run adb kill-server, and manually killed and restarted the ADB process many times. Every fix I've found to this issue does not work.
Is there something I'm missing? Is there some comprehensive guide on setting all of this up? I'm willing to do a fresh install if I have to.
Glad that I was able to help you. :)
As suspected, the machine contains two different versions of adb installed, one by the Android SDK, and another installed probably with another tool or program which contains adb packaged with it (maybe the fastboot tools). With two versions being executed at different times, the adb server would complain with errors as posted in your question.
Although you were able to solve this by setting genymotion to use the installed tool's adb, it is advised to actually uninstall the tool and configure the environment variables (PATH and ANDROID_HOME) to include the adb that came with the Android SDK. This modification would be needed if you would be considering to use more tools that depend on adbsuch as Android Studio or others.
Related
This question already has answers here:
adb server is out of date. killing [duplicate]
(4 answers)
Closed 5 years ago.
I'm currently experiencing a few issues using ADB with Debian Stretch. Whenever I issue an ADB command, I get the following message:
$ adb root
adb server version (39) doesn't match this client (36); killing...
* daemon started successfully *
Normally this doesn't cause any issues other than a 2 second delay while the ADB server restarts, but when I'm using adb shell the connection will occasionally drop, which is annoying. Note that this is different to other questions such as this one as the server version is greater than the client version.
This problem was caused by me having ADB installed twice on my machine. Once in my home directory (used by Android Studio), and again in /usr/bin/adb as I had the android-sdk package installed from aptitude. As Debian tends to be a bit slow with package updates, adb from the command line was calling the older version at /usr/bin/adb rather than the newer version in my home folder. This issue was solved by running:
sudo apt-get remove adb
This question already has answers here:
adb server version doesn't match this client
(41 answers)
Closed 5 years ago.
I'm creating my first react-native project with this tutorial: http://facebook.github.io/react-native/
When it comes to executing code and running react-native run-android I am getting:
adb server is out of date. killing...
* daemon started successfully *
And the app on the android device is obviously not working.
I've reinstalled the SDK, tried to adb kill-server and adb start-server, but nothing seems to work
I'm using Android 4.4 and Ubuntu 14.04
Open Android Studio, and then update all your build tools, install the SDKs that you need for your device and ensure that have you set ANDROID_HOME env var to the same dir that you have in Android Studio (commonly in /home/you/Android/Sdk), also update react-native-cli node package. Run adb kill-server and adb start-server.
Probably you will have problems with adb version, just change your bin:
sudo cp ~/Android/Sdk/platform-tools/adb /usr/bin/adb
sudo chmod +x /usr/bin/adb
In the latest adb update the adb server is out of date. killing... message has been replaced with more informative adb server version (%d) doesn't match this client (%d)
So this solution is applicable to both.
The root cause of the error is that your system has multiple adb binaries of different versions) installed. These adb binaries may come from different sources - distributed together with some development tools or even installed from your linux distribution official repository. I would strongly advise against using any of those sources. The official source of the most recent version of adb is the platform-tools package from the Android SDK. The adb tag info page contains the direct links to the package.
So if you have Android SDK already installed - just update the platform-tools package to the latest version using SDK Manager. If not - download and unpack the contents of platform-tools.zip file for your platform to a folder. Add that folder to your $PATH. Now kill all running adb processes and make sure to find all other copies of adb and delete them. In rare cases some software might stop working. In that case you would need either change that application's internal setting telling it where to find the new binary or if the application uses hard-coded adb location - just create a symlink to the new location.
That's it. No more server/client version mismatches. Although you might need to repeat the procedure after installing another software which comes prepackaged with its own adb copy.
It might be that you installed the adb package in addition to the SDK's. In that case, a
sudo apt purge adb
might solve the problem.
I'm getting this error using ADB (1.0.32) and Genymotion (2.8.2). My solution was change the ADB of the VM, from my local Android SDK's ADB to Genymotion ADB (default).
This question already has answers here:
unable to execute adb in Ubuntu. Downloaded file is meant for x86-64 while I have i686 [duplicate]
(2 answers)
Closed 7 years ago.
I'm using Ubuntu 15.10 32bit on a 32bit machine and the latest version of Android Studio with all packages downloaded from SDK manager (without the Intel atom, TV, Wear).
When I try to run or debug the App (the default simplest hello world) the console show these errors and prompt a pop-up with:
ADB not responding. If you'd like to retry, then please manually kill "adb" and click 'Restart':
Console:
13.31.35 Unable to detect adb version, adb output:
/home/user/Android/Sdk/platform-tools/adb: 1:
/home/user/Android/Sdk/platform-tools/adb: Syntax error: ")"unexpected
13.31.37 Error running app: Unable to obtain debug bridge
I already tried:
killall adb
adb: no such process
and
adb kill-server
adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
But the error still occurs.
The problem was that the platform-tools were for a 64bit machine, after replacing those with this version:
https://dl.google.com/android/repository/platform-tools_r23.0.1-linux.zip
Android Studio recognizes the adb.
But after AVD chosen, another error occurs:
Cannot launch AVD in emulator.
Output:
ERROR: 32-bit Linux Android emulator binaries are DEPRECATED, to use them
you will have to do at least one of the following:
- Use the '-force-32bit' option when invoking 'emulator'.
- Set ANDROID_EMULATOR_FORCE_32BIT to 'true' in your environment.
Either one will allow you to use the 32-bit binaries, but please be
aware that these will disappear in a future Android SDK release.
Consider moving to a 64-bit Linux system before that happens.
This question already has answers here:
adb server version doesn't match this client
(41 answers)
Closed 4 years ago.
Update (11/10/14): Genymotion has released 2.3.1 which fixes this issue. https://cloud.genymotion.com/page/changelog/#231
Update (10/21/14): Genymotion replied to my support email and indicated the solution recommended by #plackemacher below is the suggested fix at the moment. They are aware of the issue.
Since upgrading to Lollipop, I'm having adb issues when using a Genymotion emulator. Devices don't show up in Android Studio, and I've also gotten the following error when trying to run adb devices:
$ adb devices
adb server is out of date. killing...
cannot bind 'tcp:5037'
ADB server didn't ACK
* failed to start daemon *
error:
I'm not sure if it's because of the Lollipop upgrade or coincidence.
Edit/update:
Per Chris Satton's comment, I investigated if multiple adb processes were running (ps aux | grep adb), and it looks like it's a Genymotion conflict(?). It looks to include its own version of adb.
greg 72550 0.0 0.0 611164 1508 ?? S 4:14PM
0:00.02
/Applications/Genymotion.app/Contents/MacOS/player.app/Contents/MacOS/tools/adb
-s 192.168.56.102:5555 shell
greg 72523 0.0 0.0 635956 2296 ?? S 4:14PM 0:00.02 adb -P 5037 fork-server server
Try running this:
killall -9 adb
That should remove all running traces of the daemon
Edit: Best solution below
This issue may be adb incompatibility with the newest version of the platform SDK. The best solution for this issue with Genymotion is to set the Android SDK within Genymotion to your location. This can be found within the Settings page.
In my case the problem was that I have installed adb tools and fastboot using this command
sudo apt-get install android-tools-adb android-tools-fastboot
From repository, so in this case this executables goes to the /usr/bin/ directory in order that you can use it system-wide ($PATH variable).
In addition, I am running android studio with genymotion configured like in the answer above.
So when I was trying to acces adb (adb shell in my case) it was trying to start another copy of adb process (server) and bind to default port, so the problem was here.
I have just uninstalled the android-tools-adb android-tools-fastboot and added the path to my Android SDK to the $PATH variable
Using genymotion on ubuntu.
My solution was to actually use the binary instead of the PATH'd adb.
~/genymotion/tools/abd reboot
Also I have the custom SDK in genymotion.
What worked for me finally and what I think is hastle free is that you simply run the adb commands directly from platform-tools folder. For example, use ./adb devices to view the devices.
I also changed genymotion's SDK to android's default SDK but I'm not sure if it won't work without doing that.
I think ,if you want to use adb its better to use android studio emulator and test what you want, after you can use Genymotion
None of solutions helped for Ubuntu.
Just drag .apk file onto Genymotion device's screen and app will be installed.
Ubuntu 15.04, Genymotion 2.5.2
The accepted answer did not work for me, although the idea did, just with a different command:
pkill adb
I'm running ubuntu MATE 1.8.2 and Genymotion 2.6.
Add the Android SDK to the $PATH variable.
I just used ./adb reboot on Android/Sdk/platform-tools/
This question already has answers here:
Eclipse error "ADB server didn't ACK, failed to start daemon"
(23 answers)
Closed 4 years ago.
I am a Android newbie. I guess I might be doing something stupid here. I have started the Virtual Device and I see that adbd daemon is running from the Terminal Emulator. When I run adb devices I get the following error:
C:\Program Files\Android\android-sdk\tools>adb devices
* daemon not running. starting it now on port 5037 *
ADB server didn't ACK
* failed to start daemon *
error: cannot connect to daemon
No other process is using port 5037. What am I doing wrong? Here are the packages I have installed -
1) Android SDK Tools, revision 10
2) Android SDK Platform-Tools, revision 3
3) SDK Platform Android 2.3.3, API 10, revision 1
This will occur normally,if abd is not able to launch properly and didn't exit when adb kill-server is executed.
So if in Windows
1. Go to Task Manager (CTRL+ALT+DEL)
2.look for adb.exe and end the process.
Now restart the emulator ,should work properly.
additionally you can close and launch the development environment also (eg: Eclipse or NetBeans).
I suspect the problem is cause of many adb instances (in windows) , i usually face this problem cause i don't turn off my system so the adb process may not end properly.
So open task manager choose Process tab just search for adb.exe, right click on it and choose End Process Tree rather than just End Process
Had the same problem, it seems that my security solution was blocking adb.exe
this is not the right folder for adb : lately adb has moved from /tools to /platform-tools in the sdk folder.
Seems like the security program is blocking adb.exe, so go to the adb file path and open adb's properties, then check the Run this program as administrator setting.
In my case the process adb.exe starts when i connect the phone, and then when I adb devices then I have your problem, and killing the process does not help it is resurrecting like a stubborn zombie, as long as the phone is connected.
so my solution was to disconnect the phone, then kill adb.exe process, then start it by adb devices and connect the phone
After that when i command adb devices i ma getting the same prompt about killing adb out of date, but this time on the second line is * daemon started sucessfully*
win xp
htc sensation
the new eclipse adt sdk bundle from google so i suppose up to date.
I found there was a process call "Tadb.exe" in Windows Task Manager.
I guess Tadb.exe is a similiar adb application of Tencent. Because I got an alert of "android device detected by QQ" after I install the last version of Tencent QQ2013 Beta5 (6970) yesterday.
After I killed the Tadb.exe, the original adb.exe of Android SDK works again.
You can see the detailed proecss to solve this problem here:
adb cannot run, adb server is out of date
I turned off the Windows Firewall and its working like magic. I am connected to the Internet through WiFi. If you are not behind a proxy and are still unable to access the Internet through a wireless link via the emulator, go to Device Manager and disable your LAN card.
As I have tried as follow by combining omni.present's method , and finally emulator works fine.
firstly I stop adb.exe process in the task manager
then I stop and start eclipse
The fundamental reason is because the 5037 port on your machine to be occupied by a process, not only Android devices can not use adb connection ios device not use iTunes.
Can query process and close it, netstat / a / o maybe can help you to take up to 5037 ports.
To windows7 the LogsAndAlerts service will occupy port 5037.