Android Studio (3.1.2) problems with ADB-service [duplicate] - android

This question already has answers here:
android studio adb Syntax error: ")" unexpected
(4 answers)
Closed 3 years ago.
I'm using Linux Mint Sylvia on a pretty old laptop that do not support the emulators. Therefore I try to connect my Sony XA2 (pretty new with Oreo, 8.0)
I'm trying to detect my device but I seems to have some problem with Android Studio and the ADB-service.
In the log I get:
9:39 PM Unable to detect adb version, adb output: /home/fredrik/Android/Sdk/platform-tools/adb: 1: /home/fredrik/Android/Sdk/platform-tools/adb: Syntax error: "(" unexpected
If I run the lsusb I can find the device:
Bus 002 Device 011: ID 0fce:51f7 Sony Ericsson Mobile Communications AB
I tried to run the adb devices, but first I got this:
adb devices
The program 'adb' can be found in the following packages:
* adb
* android-tools-adb
Try: sudo apt install <selected package>
So I installed the adb with:
sudo apt install android-tools-adb
Then I could run the adb like:
adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
CQ3000KKV4 unauthorized
But still I got the error above in Android Studio.
Do you guys got any clue?
Best regards
Fredrik

Adb after installation seems to run correct.
Your device is listed as unauthorized so I guess you did not turn on developer tools on your device, or on your device you did not accept debuging with connected computer.
To turn on developer options on device:
Open Settings on your Android O running device.
Select System » About phone.
Scroll down and tap seven times on the Build number entry.
Now go back to Settings » System » and select Developer options from there.
In these options you should allow usb debuging if it’s not on by default.
After connecting usb cable to your device and conputer you should see prompt on your device asking for permissions to allow debuging. If you accept that you should be able to run adb tools, logcat etc on your connected device.
EDIT
Looking at the error you described in comments, it looks like it is error specific for 32-bit version systems. So I see there two possible solutions:
reinstall your system for 64-bit version
or more likely:
downgrade your adb platform tools
How to downgrade adb platform tools:
Download platform tools from this archive:
https://dl-ssl.google.com/android/repository/platform-tools_r23.0.1-linux.zip
Go to your Android SDK folder (so in your case it will bee /home/fredrik/Android/sdk/)
Remove old platform-tools
Insert data from link downloaded above
Hope it will be your case. Please keep in mind that updates of Android Studio will probably restore that error again.

There are other problems that manifest as showing unauthorized even when developer mode is on to allow usb access. Sometimes in Linux you may be running adb in user mode which may not allow usb access. In this case I've needed to disconnect adb and restart it using root privileges.
adb kill-server
sudo adb start-server

Related

Android phone has to replug the usb to run application from eclipse

since several days ago, I found that there was not any running android device in the "Android Device Chooser" windoo run aw anymore when I started tn android application from eclipse. But my android phone (a device produced by HUAWEI and running android 4.1) was actually connected with my computer with debug mode on and it had no such problem before. A temporary method to fix this problem is to replug the usb cable of my phone every time I run an application which is very inconvenient and hurt the usb port badly.
An interesting thing is my device is in the devices list with online status in the DDMS perspective. Does any one know what the cause of this problem or this means the usb port of my phone is broken?
(ps:no adb disconnected error is presented)
You need to set the minSdkVersion of your Application to be less than the Android Version installed on your Device.
You can do it by changing the android:minSdkVersion value in your Manifest.xml File.
In your case this should be android:minSdkVersion="14"
Edit :
Use ADB Restart Method:
1. Launch Terminal.
2. Navigate to Platform-tools directory (It is located in Android SDKs directory).
3. type the following commands in Terminal Command # 1: ./adb kill-server Command # 2: ./adb start-server
4. Hopefully, your Android Device will be visible when you run your Android Application Project.
I hope this helps.

Ecilpse won't recognize my device after upgrading to Kitkat (4.4.2)

I just upgraded my Android device to 4.4.2 and now Eclipse will not be able to choose a running Android device when I want to run my project. The Android Device Chooser shows my device up with a serial number as "????????????" and Target as "unknown" and State as "??". Additionally, I have enabled Developer Options with USB Debugging.
what os are you using. i see that on my linux box with some devices. i normally kill adb and restart it as root and the devices shows up and works correctly. found that solution years ago on stack overflow or something like that. not sure if the same thing is needed with windows/osx. on linux, assuming adb is in your path:
$ killall adb
$ sudo adb devices
otherwise os you're trying to connect it to and the specific device information would probably be helpful in tracking it down.
I have a few suggestions. Try them in this order until it works.
Reboot the phone.
Try turning off and then back on "USB Debugging" on your phone (in Developer Options probably).
open cmd > go to the your Android SDK directory > type cd platform-tools > type ./adb kill-server > then finally type ./adb start-server
References:
Eclipse - Target "unknown" in Android device chooser
Android device chooser - My device seems offline
The solution for my device after updating was to completely uninstall the device driver from device manager and reinstalling it. I am using windows and my mobile was shown as Android Phone and not as Nexus 7. Home it helps someone.

Adb can't find my device

I was developing an android application from Eclipse, connecting my Acer ICONIATAB A 500, with Android 3.0.1. And I did not have any problem.
Now I'm trying to developing the same application on Acer ICONIATAB A 501, with Android 3.2
and my ADB can't find the new device, while Windows can find it! I set in my tablet Debug USB option active, and I installed the appropriate driver on Windows.
I installed even the last Google USB driver (Rev. 7)
I tried to list the device find form adb with command
adb devices
from command line, but List of devices attached is empty.
What can i do?
execute these line
adb kill-server
adb start-server
if it is mobile device check that in settings, developers options , debugging mode is checked or not
You need to install LGUnitedMobileDriver package from the LG website, even though Windows 7 automatically installed USB drivers for the phone.
Try to update your Android-SDK on your computer (in Eclipse or whatever IDE you are using), this helped me solve a similar Problem.

How to enable MacBook to recognize android devices

For Windows, Google provides USB Driver but Google USB Driver is not compatible with Mac OS and I read that anything did not need to Mac OS and Linux.
I've already set "USB Debugging ON" on my android device.
Followings are my development environment.
OS: Mac OS 10.6.8
Android Device: Google Nexus S
Android OS: 4.0.3
IDE: Eclipse SDK 3.7.2
The application I make uses camera, so I need to debug with devices.
It should just work.
I would imagine there's something else going on. Plug your phone in and try listing it from the command line:
$ adb devices
If it's not, try restarting the adb server:
$ adb kill-server
$ adb start-server
After you restart the server, if the device still isn't listed, unplug then plug in again to a different USB port. Failing that, restart the system.
Once the device appears when using the $ adb devices command, try obtaining a shell:
$adb shell
If that fails, I would make sure your SKD is up to date as well as the ADT Eclipse plugin.
I've had similar issues too and it seemed like it was related to the USB hubs not working properly. Trying resetting your PRAM and see if that helps.
Your Android device needs to be in Developer Mode.
Go to Settings > About phone and tap many times on the Build-Number.
See here: http://www.gottabemobile.com/2013/11/09/disable-sms-text-google-hangouts/

Why does adb return offline after the device string?

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.

Categories

Resources