Related
Since I reinstalled Eclipse (simply deleted and downloaded it again) I can't debug my applications on Samsung Galaxy i9001 (with CyanogenMod - Android 4.4.2). It worked fine before reinstallation.
Unplug/plug, Uncheck/check "Debug Enabled", adb kill-server/adb start-server, restart phone/computer doesn't work for me. On the device authorize dialog never appears (but I remember that dialog appeared before reinstallation). I have no idea how to force this authorize dialog to display. There is no abd_key.pub file in .android directory.
When i try read cpu info DDMS says:
[2014-04-15 12:47:06 - DDMS] device unauthorized. Please check the confirmation dialog on your device.
Any ideas? Is it possible to generate keys manually without confirmation dialog?
USB Connection
Wireless Connection
It's likely that the device is no longer authorized on ADB for whatever reason.
1. Check if authorized:
<ANDROID_SDK_HOME>\platform-tools>adb devices
List of devices attached
4df798d76f98cf6d unauthorized
2. Revoke USB Debugging on phone
If the device is shown as unauthorized, go to the developer options on the phone and click "Revoke USB debugging authorization" (tested with JellyBean & Samsung GalaxyIII).
3. Restart ADB Server:
Then restarted adb server
adb kill-server
adb start-server
4. Reconnect the device
The device will ask if you are agree to connect the computer id.
You need to confirm it.
5. Now Check the device
It is now authorized!
adb devices
<ANDROID_SDK_HOME>\platform-tools>adb devices
List of devices attached
4df798d76f98cf6d device
Try forcing ADB to create new keys.
On Linux/OSX:
$ mv ~/.android/adbkey ~/.android/adbkey.old
$ mv ~/.android/adbkey.pub ~/.android/adbkey.pub.old
$ adb kill-server
$ adb start-server
On Windows 10 (thank you, Pau Coma Ramirez, Naveen and d4c0d312!):
Go to %HOMEPATH%\Android\.android\
Look for files called adbkey or adbkey.pub.
Delete these files. Or, if you want to be on the safe side, move them to another directory.
Repeat the above steps in %USERPROFILE%\.android\
Try again
After this I didn't even need to unplug my phone: the authorization prompt was already there.
Ohhh finally I figured it out!
After removing Eclipse directory I installed it into another directory.
echo %ANDROID_SDK_HOME%
has displayed wrong path to sdk directory.
set ANDROID_SDK_HOME "E:\adt-bundle-windows-x86_64-20140321\sdk"
unplug device
adb kill-server
adb start-server
plug device
After these steps, I was able to see confirmation dialog with RSA fingerprint on my phone :)
I run into the same issues with nexus7.
Following worked for fixing this.
Open Developer option in the Settings menu on your device.
Switch off the button on the upper right of the screen.
Delete all debug permission from the list of the menu.
Switch on the button on the upper right of the screen.
now reconnect your device to your PC and everything should be fine.
Sorry for my poor english and some name of the menus(buttons) can be incorrect in your language because mine is Japanese.
I had the same problem. It was resolved by setting "USB computer connection" to "Camera (PTP)" instead of "Media Device (MTP)
I wasted hours on this stupid issue. None of the above solutions worked for me on their own.
I'm running Windows 10. I had an old manual install of the Android SDK as well as Android Studio's SDK. I deleted my manually installed SDK and all my devices stopped working. These were the symptoms:
$ adb usb
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
as well as
$ adb devices
List of devices attached
id1 unauthorized
id2 unauthorized
id3 unauthorized
To be honest I'm not sure which of these steps got me my Allow USB debugging? prompts back so I listed EVERYTHING for completeness. Goes in order from easiest to hardest. Most people seem to be back on their feet after the first two sections.
Restart ADB
I would perform this after each of the sections below.
adb kill-server
adb usb
Go crazy with developer options
Turn Developer options off and back on
Turn USB debugging off and back on
Revoke USB debugging authorizations. Try this while USB debugging is on and if possible try also when USB debugging is off.
Replug devices
Unplug and replug USB cable into phone.
Switch physical ports on your PC that your USB cable is connected into
Switch physical USB cables you're using to connect your devices
Start rebooting everything
Reboot all your devices and connect again
Reboot your PC
Toggle WIFI on and off
Start deleting things
CAUTION Delete your ~/.android folder. Sometimes this folder can have the wrong permissions which can cause issues. You might want to back this folder up first.
Uninstall all manufacturer specific drivers from add/remove programs. I uninstalled the following (names are not exact)
LG United USB Driver
HTC Mobile USB Driver
OnePlus USB Drivers 1.00
Samsung USB Driver
I also uninstalled all emulators and their respective drivers (optional)
Nox & related drivers
Bluestacks
Genymotion
Erase all Android related environment variables.
Delete %ANDROID_HOME% if you have it set
Delete %ANDROID_SDK_HOME% if you have it set
At this point all my devices magically came to life and started displaying the Allow USB debugging? prompts and connecting properly through ADB. If you've made it this far and haven't found a solution, I am truly sorry you're in this predicament. Make sure you've restarted all devices and your dev machine at the end of all of these steps and connect to a fresh USB port using a new cable.
If that still doesn't work try some of these other SO posts on the subject:
Android ADB device offline, can't issue commands
Can't connect Nexus 4 to adb: unauthorized
How to solve ADB device unauthorized in Android ADB host device?
For me, I firstly unauthorized my device accidentally which I found out later. To revert it back to reauthorise:
Disconnect USB device from laptop/computer
Click 'Revoke USB debugging authorisations' in Developer options.
Disable developer options on top.
re-enable it again.
enable USB debugging
run command 'adb kill-server' on terminal
run command 'adb start-server' on terminal
connect your mobile device to laptop/computer
reauthorize
press like)
Note: if above doesn't work, trying restarting your laptop before connecting again
For reference, I just encountered much the same issue on Linux and had a hell of a time figuring it out. I eventually determined that I had a ~/.android directory that was root owned (thanks to running adb as root, while flailing around trying to figure out other connection problems). Deleting that root owned ~/.android directory resolved the missing authorisation dialog next time I reconnected the device.
It's possible that simply changing the ownership would also have fixed the problem - I'm guessing it was a simple lack of access to the adb key file stored inside that was the root of the problem. I didn't verify that, though, and I'm not going to deliberately break my hard-won connectivity just so I can check ;-)
Steps that worked for me:
1. Disconnect phone from usb cable
2. Revoke USB Debugging on phone
3. Restart the device
4. Reconnect the device
The most important part was rebooting the device. Didn't work without it .
After having spent over an hour going in rounds swearing at Samsung (mostly), Google, and who not, here are my findings, that finally helped me get the device recognized:
On Device:
Set developer mode
Allow USB debugging
Default USB configuration > Select USB tethering
Connect device to PC USB
On PC:
Elevated cmd/ps prompt (maybe not mandatory, but that was my drill)
adb kill-server (precede with .\ in ps)
adb start-server (while device connected) > watch for prompt on device
On device:
Always allow connections from this computer > Yes
On PC:
adb devices gets the following output:
List of devices attached
278c250cce217ece device
Had similar issue on osx and Nexus 5 (A6.0.1).
I did get the authorization pop-up and confirmed it, despite that Android Studio nor any other IDE could connect to device.
Turned out my Nexus (rooted) was missing key files.
Rebooted Android device into recovery
Ran code pasted below
Rebooted Android device, adb now identifies device
Push key from computer to Android device:
cd ~/.android && adb push adbkey.pub /data/misc/adb/adb_keys
Solution came from here
I was getting this error with my Nexus 10. I tried all of the answers I could find, and then I realized I was using a different USB port than usual. I switched to using the port I usually use, which is on the other side of my laptop, and the authorization popped up on my tablet!
As the message have stated, you need to allow the adb access on your phone.
You need to first connect the phone to your PC with USB cables, then the authorization message will pop out on the screen. Tick remember your choice, then allow it.
IF your device doesnt shows any messages when connected to the PC.Just do this.
Remove /data/misc/adb/adb_key, reboot your phone and try connect
again. The message should come up.
Recheck 'USB Debug' option in developer options helped me
The solution is to copy your file ~/.android/adbkey.pub (on GNU/Linux, or %USERPROFILE%\.android\adbkey.pub on Windows) to Android, and place it as /data/misc/adb/adb_keys. You need root privileges to do that.
You can transfer the file any way you like (or are able to), be it USB, e-mail or a temporary file upload service. In my case, as it was a new Android-x86 installation in a Virtual Machine, no usable web browser, and with network/TCP adb not working, I had to actually type in the 715 characters.
At least it worked.
If you are on ubuntu, try running the server as root:
sudo adb kill-server
sudo adb start-server
Simply, turn off developer options from your device and again turn on, attach USB with the device and working system and turn on USB debugging.
I was tiered with this, I got that permission dialog by turning off wi-fi of my phone.
Disconnect your device from the computer.
Go into developer settings.
Turn off developer settings.
Turn on developer settings.
Enable USB Debugging (and whatever other settings you enabled beforehand)
Reconnect your device to the computer.
Try again.
Worked for me so hope it works for you!
I was not getting the RSA fingerprint pop up on my phone.
I had to go into the
C:\Users\<userName>\.android\adbkey and adbkey.pub
files, delete those and then do kill and restart of adb server.
I had to stop and restart the debugger and connecting as USB in PTP mode.
Because the RSA authorisation key was getting stored in this path, killing and restarting the adb server didn't help.
This solved my issue!
run your android simulator
go to setting and enable developer mode
enable from the developer settings usb debugging
at this point you will get popup massage at you emulator to authorise the device and you are good to go :)
You should delete the file: c:\users\_user_name_\.android\adbkey
On some Samsung devices the mode change that can be set by dialing *#0808# doesn't stick without direct reboot. Once rebooted, dial the same string and make sure that you have adb + mdp selected and USB set to AP. After this make sure to reconnect phone and restart ADB server. Also try to avoid USB hubs and virtual machines witch surely complicate matter further. The follow the previously mentioned instructions for clearing authorized devices etc.
I had a similar problem. However, it was solved using a different solution. I thought I might share this here as well. Let me describe my problem first.
I had the Android SDK in my ubuntu. The path to the android SDK was not in the environment variable path. I installed adb using a apt-get command and it could not find the sdk home folder and hence, it was showing the unauthorized error and the device was not popping up anything as well. I got stuck here.
Then I uninstalled the adb using apt-get purge which I installed earlier. The Android SDK has the adb program in the platform-tools folder. I just add the path to the environment variable and it worked like a charm.
export PATH=${PATH}:/home/YOUR-USERNAME/path/to/adb
adb devices
List of devices attached
f7f716d56905 device
Hence the problem was not setting the Android SDK to the environment variable path.
The same issue started appearing once I changed my development device, it was solved as:
$ mv ~/.android/adbkey ~/.android/adbkey.old
$ mv ~/.android/adbkey.pub ~/.android/adbkey.pub.old
$ adb kill-server
$ adb start-server
I had the same message in two phones:
- Sony Xperia E
- Samsung Galaxy Core 2
both Android 4.4.2, and i solved it with these two steps:
1.- Updating my adb to 1.0.31, downloading the latest version of Android SDK from SDK Manager
You can check your adb version by typing
adb version
2.- Once the phone is plugged in USB Debugging mode, A message appears asking you to authorize this computer for debugging. You have to mark "Always allow this computer", and click on Allow.
Hope it helps.
it's not may work for all situations but because i used a long cable my device doesnt connect properly and the message wont pop up
change the cable may solve the problem
I just try adb kill-server, it works for me:
PS C:\Users\languoguang> adb devices
List of devices attached
MKJ0117A19000186 unauthorized
PS C:\Users\languoguang> adb shell
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
kill and start adb server:
PS C:\Users\languoguang> adb kill-server
PS C:\Users\languoguang> adb start-server
* daemon not running; starting now at tcp:12345
* daemon started successfully
PS C:\Users\languoguang> adb devices
List of devices attached
MKJ0117A19000186 device
Here's what I did that that brought the authorization prompt and made my device appear. I used a Samsung Galaxy s7 edge.
Enable developer mode and USB debugging on your device.
Revoke the USB debugging authorization
Plug your phone to computer via USB.
Drag notification panel and select "Software Installation" as shown in the image below
This will begin installing USB driver and the prompt for USB debugging authorization will show.
Check if you have Samsung Kies installed. That is one possible solution
Since I reinstalled Eclipse (simply deleted and downloaded it again) I can't debug my applications on Samsung Galaxy i9001 (with CyanogenMod - Android 4.4.2). It worked fine before reinstallation.
Unplug/plug, Uncheck/check "Debug Enabled", adb kill-server/adb start-server, restart phone/computer doesn't work for me. On the device authorize dialog never appears (but I remember that dialog appeared before reinstallation). I have no idea how to force this authorize dialog to display. There is no abd_key.pub file in .android directory.
When i try read cpu info DDMS says:
[2014-04-15 12:47:06 - DDMS] device unauthorized. Please check the confirmation dialog on your device.
Any ideas? Is it possible to generate keys manually without confirmation dialog?
USB Connection
Wireless Connection
It's likely that the device is no longer authorized on ADB for whatever reason.
1. Check if authorized:
<ANDROID_SDK_HOME>\platform-tools>adb devices
List of devices attached
4df798d76f98cf6d unauthorized
2. Revoke USB Debugging on phone
If the device is shown as unauthorized, go to the developer options on the phone and click "Revoke USB debugging authorization" (tested with JellyBean & Samsung GalaxyIII).
3. Restart ADB Server:
Then restarted adb server
adb kill-server
adb start-server
4. Reconnect the device
The device will ask if you are agree to connect the computer id.
You need to confirm it.
5. Now Check the device
It is now authorized!
adb devices
<ANDROID_SDK_HOME>\platform-tools>adb devices
List of devices attached
4df798d76f98cf6d device
Try forcing ADB to create new keys.
On Linux/OSX:
$ mv ~/.android/adbkey ~/.android/adbkey.old
$ mv ~/.android/adbkey.pub ~/.android/adbkey.pub.old
$ adb kill-server
$ adb start-server
On Windows 10 (thank you, Pau Coma Ramirez, Naveen and d4c0d312!):
Go to %HOMEPATH%\Android\.android\
Look for files called adbkey or adbkey.pub.
Delete these files. Or, if you want to be on the safe side, move them to another directory.
Repeat the above steps in %USERPROFILE%\.android\
Try again
After this I didn't even need to unplug my phone: the authorization prompt was already there.
Ohhh finally I figured it out!
After removing Eclipse directory I installed it into another directory.
echo %ANDROID_SDK_HOME%
has displayed wrong path to sdk directory.
set ANDROID_SDK_HOME "E:\adt-bundle-windows-x86_64-20140321\sdk"
unplug device
adb kill-server
adb start-server
plug device
After these steps, I was able to see confirmation dialog with RSA fingerprint on my phone :)
I run into the same issues with nexus7.
Following worked for fixing this.
Open Developer option in the Settings menu on your device.
Switch off the button on the upper right of the screen.
Delete all debug permission from the list of the menu.
Switch on the button on the upper right of the screen.
now reconnect your device to your PC and everything should be fine.
Sorry for my poor english and some name of the menus(buttons) can be incorrect in your language because mine is Japanese.
I had the same problem. It was resolved by setting "USB computer connection" to "Camera (PTP)" instead of "Media Device (MTP)
I wasted hours on this stupid issue. None of the above solutions worked for me on their own.
I'm running Windows 10. I had an old manual install of the Android SDK as well as Android Studio's SDK. I deleted my manually installed SDK and all my devices stopped working. These were the symptoms:
$ adb usb
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
as well as
$ adb devices
List of devices attached
id1 unauthorized
id2 unauthorized
id3 unauthorized
To be honest I'm not sure which of these steps got me my Allow USB debugging? prompts back so I listed EVERYTHING for completeness. Goes in order from easiest to hardest. Most people seem to be back on their feet after the first two sections.
Restart ADB
I would perform this after each of the sections below.
adb kill-server
adb usb
Go crazy with developer options
Turn Developer options off and back on
Turn USB debugging off and back on
Revoke USB debugging authorizations. Try this while USB debugging is on and if possible try also when USB debugging is off.
Replug devices
Unplug and replug USB cable into phone.
Switch physical ports on your PC that your USB cable is connected into
Switch physical USB cables you're using to connect your devices
Start rebooting everything
Reboot all your devices and connect again
Reboot your PC
Toggle WIFI on and off
Start deleting things
CAUTION Delete your ~/.android folder. Sometimes this folder can have the wrong permissions which can cause issues. You might want to back this folder up first.
Uninstall all manufacturer specific drivers from add/remove programs. I uninstalled the following (names are not exact)
LG United USB Driver
HTC Mobile USB Driver
OnePlus USB Drivers 1.00
Samsung USB Driver
I also uninstalled all emulators and their respective drivers (optional)
Nox & related drivers
Bluestacks
Genymotion
Erase all Android related environment variables.
Delete %ANDROID_HOME% if you have it set
Delete %ANDROID_SDK_HOME% if you have it set
At this point all my devices magically came to life and started displaying the Allow USB debugging? prompts and connecting properly through ADB. If you've made it this far and haven't found a solution, I am truly sorry you're in this predicament. Make sure you've restarted all devices and your dev machine at the end of all of these steps and connect to a fresh USB port using a new cable.
If that still doesn't work try some of these other SO posts on the subject:
Android ADB device offline, can't issue commands
Can't connect Nexus 4 to adb: unauthorized
How to solve ADB device unauthorized in Android ADB host device?
For me, I firstly unauthorized my device accidentally which I found out later. To revert it back to reauthorise:
Disconnect USB device from laptop/computer
Click 'Revoke USB debugging authorisations' in Developer options.
Disable developer options on top.
re-enable it again.
enable USB debugging
run command 'adb kill-server' on terminal
run command 'adb start-server' on terminal
connect your mobile device to laptop/computer
reauthorize
press like)
Note: if above doesn't work, trying restarting your laptop before connecting again
For reference, I just encountered much the same issue on Linux and had a hell of a time figuring it out. I eventually determined that I had a ~/.android directory that was root owned (thanks to running adb as root, while flailing around trying to figure out other connection problems). Deleting that root owned ~/.android directory resolved the missing authorisation dialog next time I reconnected the device.
It's possible that simply changing the ownership would also have fixed the problem - I'm guessing it was a simple lack of access to the adb key file stored inside that was the root of the problem. I didn't verify that, though, and I'm not going to deliberately break my hard-won connectivity just so I can check ;-)
Steps that worked for me:
1. Disconnect phone from usb cable
2. Revoke USB Debugging on phone
3. Restart the device
4. Reconnect the device
The most important part was rebooting the device. Didn't work without it .
After having spent over an hour going in rounds swearing at Samsung (mostly), Google, and who not, here are my findings, that finally helped me get the device recognized:
On Device:
Set developer mode
Allow USB debugging
Default USB configuration > Select USB tethering
Connect device to PC USB
On PC:
Elevated cmd/ps prompt (maybe not mandatory, but that was my drill)
adb kill-server (precede with .\ in ps)
adb start-server (while device connected) > watch for prompt on device
On device:
Always allow connections from this computer > Yes
On PC:
adb devices gets the following output:
List of devices attached
278c250cce217ece device
Had similar issue on osx and Nexus 5 (A6.0.1).
I did get the authorization pop-up and confirmed it, despite that Android Studio nor any other IDE could connect to device.
Turned out my Nexus (rooted) was missing key files.
Rebooted Android device into recovery
Ran code pasted below
Rebooted Android device, adb now identifies device
Push key from computer to Android device:
cd ~/.android && adb push adbkey.pub /data/misc/adb/adb_keys
Solution came from here
I was getting this error with my Nexus 10. I tried all of the answers I could find, and then I realized I was using a different USB port than usual. I switched to using the port I usually use, which is on the other side of my laptop, and the authorization popped up on my tablet!
As the message have stated, you need to allow the adb access on your phone.
You need to first connect the phone to your PC with USB cables, then the authorization message will pop out on the screen. Tick remember your choice, then allow it.
IF your device doesnt shows any messages when connected to the PC.Just do this.
Remove /data/misc/adb/adb_key, reboot your phone and try connect
again. The message should come up.
Recheck 'USB Debug' option in developer options helped me
The solution is to copy your file ~/.android/adbkey.pub (on GNU/Linux, or %USERPROFILE%\.android\adbkey.pub on Windows) to Android, and place it as /data/misc/adb/adb_keys. You need root privileges to do that.
You can transfer the file any way you like (or are able to), be it USB, e-mail or a temporary file upload service. In my case, as it was a new Android-x86 installation in a Virtual Machine, no usable web browser, and with network/TCP adb not working, I had to actually type in the 715 characters.
At least it worked.
If you are on ubuntu, try running the server as root:
sudo adb kill-server
sudo adb start-server
Simply, turn off developer options from your device and again turn on, attach USB with the device and working system and turn on USB debugging.
I was tiered with this, I got that permission dialog by turning off wi-fi of my phone.
Disconnect your device from the computer.
Go into developer settings.
Turn off developer settings.
Turn on developer settings.
Enable USB Debugging (and whatever other settings you enabled beforehand)
Reconnect your device to the computer.
Try again.
Worked for me so hope it works for you!
I was not getting the RSA fingerprint pop up on my phone.
I had to go into the
C:\Users\<userName>\.android\adbkey and adbkey.pub
files, delete those and then do kill and restart of adb server.
I had to stop and restart the debugger and connecting as USB in PTP mode.
Because the RSA authorisation key was getting stored in this path, killing and restarting the adb server didn't help.
This solved my issue!
run your android simulator
go to setting and enable developer mode
enable from the developer settings usb debugging
at this point you will get popup massage at you emulator to authorise the device and you are good to go :)
You should delete the file: c:\users\_user_name_\.android\adbkey
On some Samsung devices the mode change that can be set by dialing *#0808# doesn't stick without direct reboot. Once rebooted, dial the same string and make sure that you have adb + mdp selected and USB set to AP. After this make sure to reconnect phone and restart ADB server. Also try to avoid USB hubs and virtual machines witch surely complicate matter further. The follow the previously mentioned instructions for clearing authorized devices etc.
I had a similar problem. However, it was solved using a different solution. I thought I might share this here as well. Let me describe my problem first.
I had the Android SDK in my ubuntu. The path to the android SDK was not in the environment variable path. I installed adb using a apt-get command and it could not find the sdk home folder and hence, it was showing the unauthorized error and the device was not popping up anything as well. I got stuck here.
Then I uninstalled the adb using apt-get purge which I installed earlier. The Android SDK has the adb program in the platform-tools folder. I just add the path to the environment variable and it worked like a charm.
export PATH=${PATH}:/home/YOUR-USERNAME/path/to/adb
adb devices
List of devices attached
f7f716d56905 device
Hence the problem was not setting the Android SDK to the environment variable path.
The same issue started appearing once I changed my development device, it was solved as:
$ mv ~/.android/adbkey ~/.android/adbkey.old
$ mv ~/.android/adbkey.pub ~/.android/adbkey.pub.old
$ adb kill-server
$ adb start-server
I had the same message in two phones:
- Sony Xperia E
- Samsung Galaxy Core 2
both Android 4.4.2, and i solved it with these two steps:
1.- Updating my adb to 1.0.31, downloading the latest version of Android SDK from SDK Manager
You can check your adb version by typing
adb version
2.- Once the phone is plugged in USB Debugging mode, A message appears asking you to authorize this computer for debugging. You have to mark "Always allow this computer", and click on Allow.
Hope it helps.
it's not may work for all situations but because i used a long cable my device doesnt connect properly and the message wont pop up
change the cable may solve the problem
I just try adb kill-server, it works for me:
PS C:\Users\languoguang> adb devices
List of devices attached
MKJ0117A19000186 unauthorized
PS C:\Users\languoguang> adb shell
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
kill and start adb server:
PS C:\Users\languoguang> adb kill-server
PS C:\Users\languoguang> adb start-server
* daemon not running; starting now at tcp:12345
* daemon started successfully
PS C:\Users\languoguang> adb devices
List of devices attached
MKJ0117A19000186 device
Here's what I did that that brought the authorization prompt and made my device appear. I used a Samsung Galaxy s7 edge.
Enable developer mode and USB debugging on your device.
Revoke the USB debugging authorization
Plug your phone to computer via USB.
Drag notification panel and select "Software Installation" as shown in the image below
This will begin installing USB driver and the prompt for USB debugging authorization will show.
Check if you have Samsung Kies installed. That is one possible solution
Since I reinstalled Eclipse (simply deleted and downloaded it again) I can't debug my applications on Samsung Galaxy i9001 (with CyanogenMod - Android 4.4.2). It worked fine before reinstallation.
Unplug/plug, Uncheck/check "Debug Enabled", adb kill-server/adb start-server, restart phone/computer doesn't work for me. On the device authorize dialog never appears (but I remember that dialog appeared before reinstallation). I have no idea how to force this authorize dialog to display. There is no abd_key.pub file in .android directory.
When i try read cpu info DDMS says:
[2014-04-15 12:47:06 - DDMS] device unauthorized. Please check the confirmation dialog on your device.
Any ideas? Is it possible to generate keys manually without confirmation dialog?
USB Connection
Wireless Connection
It's likely that the device is no longer authorized on ADB for whatever reason.
1. Check if authorized:
<ANDROID_SDK_HOME>\platform-tools>adb devices
List of devices attached
4df798d76f98cf6d unauthorized
2. Revoke USB Debugging on phone
If the device is shown as unauthorized, go to the developer options on the phone and click "Revoke USB debugging authorization" (tested with JellyBean & Samsung GalaxyIII).
3. Restart ADB Server:
Then restarted adb server
adb kill-server
adb start-server
4. Reconnect the device
The device will ask if you are agree to connect the computer id.
You need to confirm it.
5. Now Check the device
It is now authorized!
adb devices
<ANDROID_SDK_HOME>\platform-tools>adb devices
List of devices attached
4df798d76f98cf6d device
Try forcing ADB to create new keys.
On Linux/OSX:
$ mv ~/.android/adbkey ~/.android/adbkey.old
$ mv ~/.android/adbkey.pub ~/.android/adbkey.pub.old
$ adb kill-server
$ adb start-server
On Windows 10 (thank you, Pau Coma Ramirez, Naveen and d4c0d312!):
Go to %HOMEPATH%\Android\.android\
Look for files called adbkey or adbkey.pub.
Delete these files. Or, if you want to be on the safe side, move them to another directory.
Repeat the above steps in %USERPROFILE%\.android\
Try again
After this I didn't even need to unplug my phone: the authorization prompt was already there.
Ohhh finally I figured it out!
After removing Eclipse directory I installed it into another directory.
echo %ANDROID_SDK_HOME%
has displayed wrong path to sdk directory.
set ANDROID_SDK_HOME "E:\adt-bundle-windows-x86_64-20140321\sdk"
unplug device
adb kill-server
adb start-server
plug device
After these steps, I was able to see confirmation dialog with RSA fingerprint on my phone :)
I run into the same issues with nexus7.
Following worked for fixing this.
Open Developer option in the Settings menu on your device.
Switch off the button on the upper right of the screen.
Delete all debug permission from the list of the menu.
Switch on the button on the upper right of the screen.
now reconnect your device to your PC and everything should be fine.
Sorry for my poor english and some name of the menus(buttons) can be incorrect in your language because mine is Japanese.
I had the same problem. It was resolved by setting "USB computer connection" to "Camera (PTP)" instead of "Media Device (MTP)
I wasted hours on this stupid issue. None of the above solutions worked for me on their own.
I'm running Windows 10. I had an old manual install of the Android SDK as well as Android Studio's SDK. I deleted my manually installed SDK and all my devices stopped working. These were the symptoms:
$ adb usb
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
as well as
$ adb devices
List of devices attached
id1 unauthorized
id2 unauthorized
id3 unauthorized
To be honest I'm not sure which of these steps got me my Allow USB debugging? prompts back so I listed EVERYTHING for completeness. Goes in order from easiest to hardest. Most people seem to be back on their feet after the first two sections.
Restart ADB
I would perform this after each of the sections below.
adb kill-server
adb usb
Go crazy with developer options
Turn Developer options off and back on
Turn USB debugging off and back on
Revoke USB debugging authorizations. Try this while USB debugging is on and if possible try also when USB debugging is off.
Replug devices
Unplug and replug USB cable into phone.
Switch physical ports on your PC that your USB cable is connected into
Switch physical USB cables you're using to connect your devices
Start rebooting everything
Reboot all your devices and connect again
Reboot your PC
Toggle WIFI on and off
Start deleting things
CAUTION Delete your ~/.android folder. Sometimes this folder can have the wrong permissions which can cause issues. You might want to back this folder up first.
Uninstall all manufacturer specific drivers from add/remove programs. I uninstalled the following (names are not exact)
LG United USB Driver
HTC Mobile USB Driver
OnePlus USB Drivers 1.00
Samsung USB Driver
I also uninstalled all emulators and their respective drivers (optional)
Nox & related drivers
Bluestacks
Genymotion
Erase all Android related environment variables.
Delete %ANDROID_HOME% if you have it set
Delete %ANDROID_SDK_HOME% if you have it set
At this point all my devices magically came to life and started displaying the Allow USB debugging? prompts and connecting properly through ADB. If you've made it this far and haven't found a solution, I am truly sorry you're in this predicament. Make sure you've restarted all devices and your dev machine at the end of all of these steps and connect to a fresh USB port using a new cable.
If that still doesn't work try some of these other SO posts on the subject:
Android ADB device offline, can't issue commands
Can't connect Nexus 4 to adb: unauthorized
How to solve ADB device unauthorized in Android ADB host device?
For me, I firstly unauthorized my device accidentally which I found out later. To revert it back to reauthorise:
Disconnect USB device from laptop/computer
Click 'Revoke USB debugging authorisations' in Developer options.
Disable developer options on top.
re-enable it again.
enable USB debugging
run command 'adb kill-server' on terminal
run command 'adb start-server' on terminal
connect your mobile device to laptop/computer
reauthorize
press like)
Note: if above doesn't work, trying restarting your laptop before connecting again
For reference, I just encountered much the same issue on Linux and had a hell of a time figuring it out. I eventually determined that I had a ~/.android directory that was root owned (thanks to running adb as root, while flailing around trying to figure out other connection problems). Deleting that root owned ~/.android directory resolved the missing authorisation dialog next time I reconnected the device.
It's possible that simply changing the ownership would also have fixed the problem - I'm guessing it was a simple lack of access to the adb key file stored inside that was the root of the problem. I didn't verify that, though, and I'm not going to deliberately break my hard-won connectivity just so I can check ;-)
Steps that worked for me:
1. Disconnect phone from usb cable
2. Revoke USB Debugging on phone
3. Restart the device
4. Reconnect the device
The most important part was rebooting the device. Didn't work without it .
After having spent over an hour going in rounds swearing at Samsung (mostly), Google, and who not, here are my findings, that finally helped me get the device recognized:
On Device:
Set developer mode
Allow USB debugging
Default USB configuration > Select USB tethering
Connect device to PC USB
On PC:
Elevated cmd/ps prompt (maybe not mandatory, but that was my drill)
adb kill-server (precede with .\ in ps)
adb start-server (while device connected) > watch for prompt on device
On device:
Always allow connections from this computer > Yes
On PC:
adb devices gets the following output:
List of devices attached
278c250cce217ece device
Had similar issue on osx and Nexus 5 (A6.0.1).
I did get the authorization pop-up and confirmed it, despite that Android Studio nor any other IDE could connect to device.
Turned out my Nexus (rooted) was missing key files.
Rebooted Android device into recovery
Ran code pasted below
Rebooted Android device, adb now identifies device
Push key from computer to Android device:
cd ~/.android && adb push adbkey.pub /data/misc/adb/adb_keys
Solution came from here
I was getting this error with my Nexus 10. I tried all of the answers I could find, and then I realized I was using a different USB port than usual. I switched to using the port I usually use, which is on the other side of my laptop, and the authorization popped up on my tablet!
As the message have stated, you need to allow the adb access on your phone.
You need to first connect the phone to your PC with USB cables, then the authorization message will pop out on the screen. Tick remember your choice, then allow it.
IF your device doesnt shows any messages when connected to the PC.Just do this.
Remove /data/misc/adb/adb_key, reboot your phone and try connect
again. The message should come up.
Recheck 'USB Debug' option in developer options helped me
The solution is to copy your file ~/.android/adbkey.pub (on GNU/Linux, or %USERPROFILE%\.android\adbkey.pub on Windows) to Android, and place it as /data/misc/adb/adb_keys. You need root privileges to do that.
You can transfer the file any way you like (or are able to), be it USB, e-mail or a temporary file upload service. In my case, as it was a new Android-x86 installation in a Virtual Machine, no usable web browser, and with network/TCP adb not working, I had to actually type in the 715 characters.
At least it worked.
If you are on ubuntu, try running the server as root:
sudo adb kill-server
sudo adb start-server
Simply, turn off developer options from your device and again turn on, attach USB with the device and working system and turn on USB debugging.
I was tiered with this, I got that permission dialog by turning off wi-fi of my phone.
Disconnect your device from the computer.
Go into developer settings.
Turn off developer settings.
Turn on developer settings.
Enable USB Debugging (and whatever other settings you enabled beforehand)
Reconnect your device to the computer.
Try again.
Worked for me so hope it works for you!
I was not getting the RSA fingerprint pop up on my phone.
I had to go into the
C:\Users\<userName>\.android\adbkey and adbkey.pub
files, delete those and then do kill and restart of adb server.
I had to stop and restart the debugger and connecting as USB in PTP mode.
Because the RSA authorisation key was getting stored in this path, killing and restarting the adb server didn't help.
This solved my issue!
run your android simulator
go to setting and enable developer mode
enable from the developer settings usb debugging
at this point you will get popup massage at you emulator to authorise the device and you are good to go :)
You should delete the file: c:\users\_user_name_\.android\adbkey
On some Samsung devices the mode change that can be set by dialing *#0808# doesn't stick without direct reboot. Once rebooted, dial the same string and make sure that you have adb + mdp selected and USB set to AP. After this make sure to reconnect phone and restart ADB server. Also try to avoid USB hubs and virtual machines witch surely complicate matter further. The follow the previously mentioned instructions for clearing authorized devices etc.
I had a similar problem. However, it was solved using a different solution. I thought I might share this here as well. Let me describe my problem first.
I had the Android SDK in my ubuntu. The path to the android SDK was not in the environment variable path. I installed adb using a apt-get command and it could not find the sdk home folder and hence, it was showing the unauthorized error and the device was not popping up anything as well. I got stuck here.
Then I uninstalled the adb using apt-get purge which I installed earlier. The Android SDK has the adb program in the platform-tools folder. I just add the path to the environment variable and it worked like a charm.
export PATH=${PATH}:/home/YOUR-USERNAME/path/to/adb
adb devices
List of devices attached
f7f716d56905 device
Hence the problem was not setting the Android SDK to the environment variable path.
The same issue started appearing once I changed my development device, it was solved as:
$ mv ~/.android/adbkey ~/.android/adbkey.old
$ mv ~/.android/adbkey.pub ~/.android/adbkey.pub.old
$ adb kill-server
$ adb start-server
I had the same message in two phones:
- Sony Xperia E
- Samsung Galaxy Core 2
both Android 4.4.2, and i solved it with these two steps:
1.- Updating my adb to 1.0.31, downloading the latest version of Android SDK from SDK Manager
You can check your adb version by typing
adb version
2.- Once the phone is plugged in USB Debugging mode, A message appears asking you to authorize this computer for debugging. You have to mark "Always allow this computer", and click on Allow.
Hope it helps.
it's not may work for all situations but because i used a long cable my device doesnt connect properly and the message wont pop up
change the cable may solve the problem
I just try adb kill-server, it works for me:
PS C:\Users\languoguang> adb devices
List of devices attached
MKJ0117A19000186 unauthorized
PS C:\Users\languoguang> adb shell
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
kill and start adb server:
PS C:\Users\languoguang> adb kill-server
PS C:\Users\languoguang> adb start-server
* daemon not running; starting now at tcp:12345
* daemon started successfully
PS C:\Users\languoguang> adb devices
List of devices attached
MKJ0117A19000186 device
Here's what I did that that brought the authorization prompt and made my device appear. I used a Samsung Galaxy s7 edge.
Enable developer mode and USB debugging on your device.
Revoke the USB debugging authorization
Plug your phone to computer via USB.
Drag notification panel and select "Software Installation" as shown in the image below
This will begin installing USB driver and the prompt for USB debugging authorization will show.
Check if you have Samsung Kies installed. That is one possible solution
I have a device of local company. The support says that they have no imformation about drivers of my device. Windows 7 automatically found drivers and it can see sd-card of device. But ADB can't see the one. Is there any idea to solve my problem?
Yes if you have an adb supported device, you can first turn the USB debugging on and if windows wont recognize the device you need to install an ADB driver which is provided either by Google USB driver package which comes with android sdk or you can download the adb driver installer from http://adbdriver.com/downloads/
For connecting device in window 7 we require USB driver of your android device.
But If you are using Linux operating system in this case no need of USB driver.
install moborobo in your pc and connect the phone. moborobo will install a suitable driver to your phone. it Worked with my local phone.
try this way.
first kill adb server by below command on command prompt.
adb kill-server
Now again start adb server with following command on command prommpt.
adb start-server
Then try to see you device using below commnad
adb devices
I use "adb devices" to get following result. Only one device is connected to PC by USB, but we get 8 lines of result.
Could anyone suggest the reason?
WH96TNE00361 offline
WH96TNE00361 offline
WH96TNE00361 offline
WH96TNE00361 offline
WH96TNE00361 offline
WH96TNE00361 offline
WH96TNE00361 offline
WH96TNE00361 offline
Try the following:
Unplug the usb and plug it back again.
Go to the Settings -> Applications -> Development of your device
and uncheck the USB debugging mode and then check it back again.
Restart the adb on your PC.
adb kill-server
and then
adb start-server
Restart your device and try again.
To complete the previous answers, another possible solution is to change the USB socket in which your cable is plugged in.
I had this problem (with the classical answer about using adb kill-server / start-server not working) and it solved it.
Actually, it took some time to find that because Windows was correctly recognizing the device in my first socket. But not ADB. As Windows was recognizing the device, I had no real need to test other USB physical sockets. I should have.
So you can try to plug the cable in all your USB physical sockets directly available on your computer. It did worked for me. Sometimes the USB sockets are not managed the same way by a computer.
Beginning from Android 4.2.2, you must confirm on your device that it is being attached to a trusted computer. It will work with adb version 1.0.31 and above.
adb kill-server
adb start-server
that solved my problem
I've had a similar issue with one of my phones.
I was unable to connect and use usb debugging on any of my computers.
In the end, I had to restart the usb debugging on the phone manually [doing so using the Developer menu was not enough].
There's only one command you have to run on your phone [I did it using Terminal Emulator app]:
adb usb
And that was it.
Hope this helps someone in the future.
You may also try downloading newest version of adb http://developer.android.com/tools/help/adb.html
Reboot the device. This always fixes it on Mac OS, whereas adb kill-server does not.
On my Galaxy Nexus with Android 4.2.2, I had the same problem initially, 'adb devices' was showing the device but with offline status (USB debugging was initially active on my device).
These are the steps I took to remedy the situation :
Disable USB debugging (Device not connected to PC)
Re enable USB debugging
Now connect to your PC, now a pop up on the device (not on PC) will ask you for authenticating the PC, Thats it...
adb devices now lists both device id and no offline.
I post here my question just in case is helpful for somebody else.
My problem was that my colleague was connected to the same device and I was not able to connect to the same device.
Note: I had this problem with Amazon Fire TV connecting over Wifi.
There are 2 solutions:
Easy to "drop" his connection (sorry buddy :)
Restart the device
adb kill-server
adb start-server
adb connect device-ip
A bit more difficult but two clients can use the same device (use different TCP ports)
Please look at this answer
For me with Android 4.1.1 only rebooting device works
Run SDk Manager and install Android SDK Tools and Android SDK Platform-tools updates. ADB must be updated to a new version for 4.2.x
I had the same issue and none of the other answers worked. It seems to occur frequently when you connect to the device using the wifi mode (running command 'adb tcpip 5555'). I found this solution, its sort of a workaround but it does work.
Disconnect the usb (or turn off devices wifi if your connected over wifi)
Close eclipse/other IDE
Check your running programs for adb.exe (Task manager in Windows). If its running, Terminate it.
Restart your android device
After your device restarts, connect it via USB and run 'adb devices'. This should start the adb daemon. And you should see your device online again.
This process is a little lengthy but its the only one that has worked everytime for me.
Had this on client's machine it turned out he had an out of date version of adb installed via website offering adb and fastboot. The client in question didn't want to install the whole SDK because of perceived bloat :S .
So if you're seeing offline make sure you've downloaded and using the latest adb. I ended up emailing him adb executable.
Also worth checking that the adb you are using is the correct one in the Path. i.e on Mac
$ which adb
/Users/me/dev/adt-bundle-mac-x86_64/sdk-macosx/platform-tools/adb
if non of the steps work from the above. my device still offline after connected through wifi. i did the following:
go to your device...
go to settings.
go to developer options.
Allow adb debugging in charge mode only.
repeat the steps as you always do . which is:
a. connet your usb on chargemode only.
b. open command write:
- adb tcpip 4455
- adb connect 192.168.1.11:4455
b. disconnect usb.
now everythings work for me .
make sure the device is set for usb debugging
Have the adb client running (e.g. via "adb usb" or adb start-server"
LEAVE the device connected via usb!!!
AND THEN reboot the device.
This always brings my Motorola MB525 "online" again, after adb complains it would be "offline". I'm using OSX btw.
I made adb working on Android 4.4.2 with GT-N8010 (Samsung tablet) after setting device in authorized mode once upgraded adb to SDK version.
~/local/opt/Android/Sdk/platform-tools/adb
Android Debug Bridge version 1.0.32
While It did not work using :
adb version
Android Debug Bridge version 1.0.31
Shiped in Ubuntu LTS version :
apt-cache show android-tools-adb | grep Version
Version: 4.2.2+git20130218-3ubuntu23
This link may help then
Can't connect Nexus 4 to adb: unauthorized
After wasting hours on it, I have updated my version of adb and now adb devices shows my device online and I can run the app on it again.
also make sure adb isn't running in your processes automatically. If it's there right click open file location, figure out what is starting it, kill it with fire. Run the updated adb from an updated android sdk platform tools. This was the issue with mine, hope it helps someone.
What did me in is was that multiple unrelated software packages just happened to install adb.exe -- in particular for me (on Windoze), the phone OEM driver installation package "helpfully" also installed adb.exe into C:\windows, and this directory appears in %PATH% long before the platform-tools directory of my android SDK. Unsurprisingly, the adb.exe included in the phone OEM driver package is MUCH older than the one in the updated android sdk.
So adb worked just fine for me until one day something caused me to update the windows drivers for my phone. Once I did that, absolutely NOTHING would make my phone status change from "offline" -- but the problem had nothing to do with the driver. It was simply that the driver package had installed a different adb.exe - and a MUCH older one - into a directory with higher precedence.
To fix my installation I simply altered the PATH environment variable to make the sdk's adb.exe have priority.
A quick check suggested to me that "lots" of different packages include adb.exe, so be careful not to insert an older one into your toolchain unintentionally.
I must really be getting old: I don't ever remember such a stupid issue taking so endlessly long to uncover.
Check that the ADB version that you are running is newer than the version of the OS on the connected devices. For me, updating the ADB helped to get the device online.