Android Studio Debugger Port Error - "handshake failed - connection prematurely closed" - android-studio

When I try to attach the Android Studio Debugger to a process, I get the following error:
Error running Android Debugger (8603):
Unable to open debugger port (localhost:8603): java.io.IOException "handshake failed - connection prematurally closed"
Kudos to whoever spelled prematurely that way.
Anyway, how do I get around this problem?
I'm using Android Studio 1.2.2 on Ubuntu.
This did not help.

The best and one solution for me was just to restart Android Studio.
Before I tried to restart adb server from command prompt or disable and enable adb integration from tools->Android->Check/Unchek the line, unplug and plug device , but nothing helped.

For me these didnt work: Restart Android Studio,adb kill start server, restart phone.
Worked for me: Tools->Android->Disable and Enabled ADB Integration.

On Windows, restarting Android Studio didn't work. I instead killed the "adb.exe" process then retried.

I didn't need to restart my device, only restarting android studio fixed it ( clean your project if needed).
If doesn't work then restart your device.

Maybe you should consider retaining only one device or a emulator, because Android Studio or Intellij IDEA only accept one device or emulator when debugging. It works well for me. I hope this can help.

Restarting the ADB server worked for me:
$ adb kill-server
$ adb start-server
* daemon not running. starting it now at tcp:5037 *
* daemon started successfully *
$ adb devices
List of devices attached
ce0217127216c0220c device

I had to restart both my android device and android studio. That seemed to work for me.

In my case, often the reason is bad USB cable. Just replace another, better USB cable will work.

It shows that your previous debbugger was not closed. You should click stop (red button) to stop your attach previously, and rerun your debbugger. It would attach again

Related

Can't run app on phone or emulator with Android Studio: adb.exe start-server failed -- run manually if necessary

Some time ago, my android studio got a problem. It can't find my phone. I get this error:
Unable to run 'adb': null
'C:\Users\Gebruiker\AppData\Local\Android\Sdk\platform-tools\adb.exe start-server' failed -- run manually if necessary
When I open the taskmanager I can see adb.exe opened multiple times, but I am unable to force stop it.
I didn't have this problem before. I tried everything I could find on the internet. I deleted and downloaded android studio multiple times, made sure all the files were gone, tried an older version, tried the no .exe installer but none worked.
I also checked the cable and tried another one.
My computer can see my phone because it's listed in the explorer so the problem is with android studio.
EDIT: I tried to run on an emulator, but got the same error and another one:
ERROR: AdbHostServer.cpp:102: Unable to connect to adb daemon on port: 5037
EDIT 2: I downloaded android studio on a different computer and had no errors. I used the same device and usb cable. Everything worked normally so the problem is with my computer.
I hope someone can help me.
I thank you in advance!
I found out the problem. The anti virus software (Bullguard) blocked it. I had bullguard open during launching android studio and a popup asked for permission for adb.exe. I didn't get this popup when I hadn't open android studio and bullguard together.

No connected devices found; please connect a device, or see flutter.io/setup for getting started instructions

i am using the Android Studion 3.3 on Windows 10. i have created a emulator and it is running manually for the AVD manager but when i Click on Run Button the fallowing messageBox sappers
> No connected devices found; please connect a device, or see flutter.io/setup for getting started instructions.
I would try to restart your adb deamon first. Adb is the program that runs in the background to install your application to the simulator. You can do that by using the following command:
adb kill-server
Then you can run adb devices. If should start adb again and if it shows your emulator, it means that the simulator is sucessfully connected to adb, which means you are ready to try to install the application again from Android Studio.
If that still does not work, you can also restart Android Studio and the emulator, which often solves this kind of problems for me. (It's also useful if you run flutter doctor, it will tell you if any devices are connected).

Device emulator-5554 disconnected (with no Emulators on Android Studio)

I get an error while trying to run any app on a physical device.
Device emulator-5554disconnected, monitoring stopped.
Error while Installing APK
It works after trying at least 3 times, but sometimes it gets frustrating.
I tried to delete all the emulators and reinstall Android Studio but it didn't help. and the set deployment target is always flashing like so:
flashing emulator error
In my case it looks like Docker interferes with adb.
I tried restarting Android Studio, adb kill-server && adb start-server, and anything else I could think of.
Then I tried killing all docker containers and quitting the docker app, and everything works nicely again! Edit: Killing the containers is enough
I'm wondering if this is a newly introduced issue in Android Studio/adb/Docker - I updated to AS 3.4 recently, and I don't remember having this problem in the past, but it could have just been a coincidence.
I tried the suggestion but it didn't work, after a few days of work on it, I found out that a vpn software (SoftEther) that I had installed was causing the problem, uninstalling it solved everything.
it seems adb was interfering with a network bridge the software was trying to create.
Try restarting the adb.
Use the following command to restart adb
adb -d kill-server && adb -d start-server
Use command -d for real device and command -e for emulator in case both are connected
Also if that doesnot work clean the project and reset connected emulator.
Run Emulator and wait for the home screen of the Emulator to load
Click Window > Open Perspective > DDMS
In Devices Panel, click on drop down menu > Reset adb
Run project

Unable to establish a connection to adb

I have problem in android studio when I want to run project that I made on my smartphone or even on Genymotion, anyone know how to fix it?
here the message:
Unable to establish a connection to adb.
this can happen if you have an incompatible version of adb running already.
try re-opening studio after killing any existing adb daemons.
Connect phone to pc in adb mode, open command prompt in folder that contains the necessary adb files. At command prompt type "adb devices" without quotes and press enter. It should kill current daemon and restart adb. Will also show device connected

Error while waiting for device: Time out after 300seconds waiting for emulator to come online

I have been trying to use android studio 2.0 emulator but I can not run my App on the Emulator. When I Run my App it shows the emulator with following details:
Hax is Enabled
Hax ram_size 0x800000000
HAx is working and emulator
runs in fast virt mode.
console on port 5554,
ADB on port 5555
After that it takes to next TAB Launching app and shows
Waiting for the device to Come online
After that it shows error:
Error while waiting for device: Time out after 300seconds waiting for emulator to come online.
What I have tried so far.
Installed fresh android studio 2.0 with all update to date SDK
Tired to increase Emulator Memory.
Installed android studio 2.1 Beta with latest SDK
Discussed this issue on Google.
What's the solution?
I haven't found any solution yet. I opened new issue on 4th may 2016 because it is known bug in previous versions. Please report on the following link if you have same issue.
https://code.google.com/p/android/issues/detail?id=209095
The solution for me was setting the Graphics option on the Android Virtual Device to Software instead of Automatic or Hardware.
I believe this was the solution because I am working on a windows machine that did not have a dedicated graphics card.
You might have forwarding enabled on adb. You can try this: Quit Android studio and launch terminal. Run these commands:
adb kill-server
adb forward --remove-all
adb start-server
Now you can launch Android Studio and try again.
Also something that can go wrong: Make sure you exit Docker for Mac (possibly all other kind of docker installations as well).
My problem went away after I shutdowned VirtualBox on my machine.
One thing I know is that Linux KVM can't get along with VirtualBox well.
I found a workaround even though I am not sure why this is happening.
Go to Menu->Tools->Android and uncheck the option Enable ADB Integration
Run the application. Now the emulator will be launched, but app will not run. Once the emulator is fully launched, check the Enable ADB Integration option and re-run the app. Now the app will be launched in the already running emulator.
Go to Device Manager (Tools -> Device Manager)
Wipe the data of your device and try starting it again.
Go to Android Studio Command Line, and follow these steps:
__> cd /Users/your_root_name/.android/avd
__> ls
__> rm -r Nexus_5X_Edited_API_17.avd There are two avd files.
Rerun the app.
You could try :
run the emulator from the console manually and see whether adb can connect("see") it from android studio. Does it run at all?
delete avd , recreate a new one for testing, always a good idea in 2.0. lot's of stuff is changing ( instant run etc.)
what does adb say from console ? adb kill-server , adb start-server, start an emulator, then adb devices does it list your emulator ?
try to change this solved my issue, you may other graphics options, and change to a lower resolution model
Upgrade to the latest SDK, for the android emulator:
use 512MB RAM
256MB heap
You can leave the default disk space.
I had the same problem. I'm using Android Studio 2.3 and Debian 9.1 Stretch 64 bits.
In my case, the problem was in default settings established in graphics aceleration configuration.
To solve the problem I opened the AVD Manager, then I selected the device and I opened config file (config.ini) selecting "Show on disk" option whitin "Actions" column. Within the file, I changed the value setted in hw.gpu.mode variable from mesa to swiftshader. After saved the changes, the emulator started without any problems.
More options availables could be found on this link.
These are the steps I took (I'm on Linux).
Switched to Software rendering (works but is too slow)
Tried running on commanline and an error displayed.
Forced emulator to use the system graphic drivers.
First, as #jlars62 suggested, I tried using Switching the Graphics to "Software" and this DID work. However, the performance is far to slow so I dug a little deeper.
Then I tried running the device from the console, as #CaptainCrunch suggestion. (My device was created in Android Studio; emulator in the Sdk may be in a different place on your system)
$ ~/Android/Sdk/emulator/emulator -avd Nexus_6_Edited_768Mb_API_23
For me this produced the following error:
libGL error: unable to load driver: i965_dri.so
libGL error: driver
pointer missing libGL error: failed to load driver: i965
...
Which I tracked down (on ArchLinux) to mean it's using the wrong graphic drivers (Android Sdk comes with it's own). You can force the system ones on the commandline with -use-system-libs:
$ ~/Android/Sdk/emulator/emulator -avd Nexus_6_Edited_768Mb_API_23 -use-system-libs
To force Android Studio to do this you can intercept the call to "emulator" like so (See Mike42) :
$ cd ~/Android/Sdk/tools/
$ mv emulator emulator.0
$ touch emulator
$ chmod +x emulator
In the new emulator file add this:
#!/bin/sh
set -ex
$0.0 $# -use-system-libs
I experienced a similar issue with android studio 2.2. Re-installing a new system image didnt resolve for me. Then found this solution on this link.
unchecking the Enable ADB Integration option and checking it back seem to resolve it for me. I hope this helps someone out there.
Android API Version for application and device should match. Check if minSdkVersion and targetSdkVersion in Gradle Scripts - build.gradle (Module: app) correspond device API.
Also low versions (e.g. API 15) result in ide-emulator link failure, inspite of applicatrion and device versions match.
I had the same problem. I removed virtual device and run app on my phone - worked well.
To remove virtual device: Click icon "AVD Manager" in Android Studio, select virtual device and in context menu click "Delete".
Then turn on on the phone "Developer mode". Connect phone via USB to the laptop.
Restarting ADB server works for me, but no need to go for it from command line.
Ctrl + Maj + A -> Troubleshoot Device Connections -> Next -> Next -> Restart ADB Server
Sadly none of the solutions worked for me! I solved my problem by uninstalling existing APK from my phone and it all started working perfectly!
This started happening after I've updated android studio to latest version.
I almost tested all solutions in this topic and other pages. Finally after lots of searching I found the issue!
I had to enable Hyper-V on my system (If your system does not support Hyper-V you need to install HAXM instead).
In this link you can read about enabling Hyper-V and HAXM: https://learn.microsoft.com/en-us/xamarin/android/get-started/installation/android-emulator/hardware-acceleration?pivots=windows
If you install HAXM and still doesn't work go to this link below and install Hyper-V.
Next, restart your computer.
If It doesn't work again remove the emulator and reinstall again with a high API.
https://learn.microsoft.com/en-us/xamarin/android/get-started/installation/android-emulator/hardware-acceleration?pivots=windows
I experienced a similar issue, i fixed it by deleting the Android emulator then created a new one with a higher API level.
In my case I've selected API-30
To fix it I went to Tools > SDK Manager > SDK Tools and updated Android SDK Build-Tools 31
Somebody said they needed to do a cold boot afterword
I encountered the same problem, when I tried to run it from the terminal by following command
~/Documents/development/android/SDK/emulator/emulator -avd Resizable_Edited_API_31
I encountered the following error
qemu-system-x86_64: -chardev socket,port=36201,host=::1,nowait,nodelay,ipv6,id=modem: address resolution failed for ::1:36201: Name or service not known
^C^X^Z
And I realized that I had disabled ipv6 in the system, after I activated it, avd ran for me.
Usually, deleting the current emulator that doesn't work anymore and creating it again will solve the issue. I've had it 5 minutes ago and that's how I solved it.
I have faced the same issue you have mentioned and could solve it by just deleting the current avd and creating a new one.It's working perfectly well now.
This error is gone for me by remove the AVD and create a new one.
after some compile and clean, the error was gone away.

Resources