Search This Blog

Saturday, November 30, 2013

Samsung Galaxy S4 - USB debugging mode in Android 4.2 and higher

Back to writing android applications.

With my new Samsung Galaxy 4, there is no longer a button for USB Debug Mode!

This setting allowed aps you develop in eclipse with the android sdk to be run directly on your phone when plugged into the USB cable.  Otherwise you have to post the apk file to the web, and turn on the "allow aps from unknown sources" every time you want to test your app on a real device.  Now it's gone.

This is a long trail of notes on what I did.  For the impatient, skip to the bottom, I summed it up at the end

A little googling found this:  Google hid the feature to protect the random user.

How to find and turn on USB debugging mode in Android 4.2 and higher

To see the option for USB debugging mode in Android 4.2 or higher, do the following:
  • Open up your device’s “Settings”. This can be done by pressing the Menu button while on your home screen and tapping “System settings”
  • Now scroll to the bottom and tap “About phone”
  • At the “About” screen, scroll to the bottom and tap on “Build number” seven times.
    • Make sure you tap seven times. If you see a “You are now a developer!” message pop up, then you know you have done it correctly.
Done! By tapping on “Build number” seven times, you have unlocked USB debugging mode on Android 4.2 and higher. You can now enable/disable it whenever you desire by going to “Settings” -> “Developer Options” -> “Debugging” ->” USB debugging”.

Read more at http://dottech.org/87439/how-to-unlock-usb-debugging-mode-on-android-4-2-jelly-bean-and-higher-guide/#fAVhAE2oVbDEJwQe.99

Hmmm...

The phone says "You are now a developer".  So it clearly worked. But still not seeing the phone in Eclipse adb run chooser....
Phone says "Connected as an installer"

http://stackoverflow.com/questions/16256048/eclipse-android-sdk-cannot-see-new-samsung-galaxy-s4-device-via-a-usb-connection

same answers.  I have the drivers installed and i did the 7x.  Still nothing.

from \Local\Android\android-sdk\platform-tools
Tried
adb kill-server
adb start server
Didn't work.  Still can't see the device.

Tried these drivers...

http://www.samsung.com/us/support/owners/product/SCH-I545ZWAVZW

Nothing.

http://stackoverflow.com/questions/3908301/why-doesnt-eclipse-see-my-samsung-galaxy-phone-even-though-i-can-transfer-files

Tried installing KIES.
Kies 3Supported models : Note 3 and devices with Android 4.3.
http://www.samsung.com/us/kies/#downloadWindows

Still not showing up in adb.  Arrggh

I doesn't even show up under Unknown Devices
Although it does show up as a portable device and i can see the sd card, etc.

Tried installing the drivers in KIES manually.  No dice.

This website shows where to get drivers
http://developer.android.com/tools/extras/oem-usb.html

Tried the Moto drivers to get my old Droid 2 working again just to prove it is not eclipse.
Back to visit previous self...
http://blog.workingsi.com/2011/12/getting-started-developing-apps-on.html
2) Install the development USB driver on your Windows computerMore surfing...http://developer.android.com/guide/developing/device.html I think need to install the windows adb driver for my phone on my computer.  You need a special USB driver for developers.http://developer.motorola.com/docstools/USB_Drivers/ Clicked on Handset USB Driver for Windows 64 bit, had to register and all that junkDownloaded, installed  Motorola Mobile Drivers Installation 5.2.0Rebooted
3) Verify that you can see the phone from the computerReading the http://developer.android.com/guide/developing/device.html site again, I got some more info on how to run "adb devices". 
Turns out you run this in a command window on the windows box, after you cd over to the directory where the android sdk is installed.  Ran it there.  Duh.   Here you see the command running for me. 
You can verify that your device is connected by executing adb devices from your SDK platform-tools/ directory. If connected, you'll see the device name listed as a "device."




Or, to upgrade an existing Android USB driver on Windows 7 with the new driver:
  1. Connect your Android-powered device to your computer's USB port.
  2. Right-click on Computer from your desktop or Windows Explorer, and select Manage.
  3. Select Device Manager in the left pane of the Computer Management window.
  4. Locate and expand Android Phone in the right pane.
  5. Right-click Android Composite ADB Interface and select Update Driver. This will launch the Hardware Update Wizard.
  6. Select Install from a list or specific location and click Next.
  7. Select Search for the best driver in these locations; un-check Search removable media; and check Include this location in the search.
  8. Click Browse and locate the USB driver folder. (The Google USB Driver is located in<sdk>\extras\google\usb_driver\.)
  9. Click Next to upgrade the driver.
The old developer.motorola page is gone now.   Why is this so hard now?  I got this done in no time years ago.

Tried these drivers.  The unkown device goes away and I see a USB drive.
https://motorola-global-portal.custhelp.com/app/answers/detail/a_id/88481/action/auth

I go to the moto phone and it is now saying USB is in storage mode.  Change it to "PC mode" on the phone menu.
Drivers spin and it re-installs on the PC.  Motorola ADB Interface is listed in the things windows says is ready to use.    USB drive is gone and under network adapters in the device manager is "Motorola USB Networking Driver".

"adb devices"  returns a number for the moto phone now.  But in eclipse I still don't see it.

I tried the samsung changing usb mode to "media device" and "camera"  neither helped adb see it.
It is hung up in USB stick mode.  I don't see a listing under "Network adapters"

I scoured the settings on the samsung again.   I find under Settings->More->Developer options, there is now a button that says USB Debugging Mode.  It is unclicked.
Whaaa Daaa Faaaa???  How could I have missed that.   The secret unlock just reveals the button, I sitll have to click it.
Things start happening on the device manager, installing, etc.
Now I see SAMSUNG_Android in the Other devices for a sec until it blips out.
It doesn't like the installed samsung driver and after a few seconds, blips and goes back to being a usb stick.   


http://forum.xda-developers.com/showthread.php?t=1601739
says uninstall kies and just do the samsung drivers
Have it working - and did remember I have Kies installed.Maybe I downloaded both the separate driver and Kies?
USB Driver Link:http://org.downloadcenter.samsung.co...1_3_2360_0.exe
Kies Link:http://org.downloadcenter.samsung.co...1082_152_4.exe
Know I have problem still with Kies... but I can use ODIN without issues.I can't really explain how I did it, as there was a lot of trial and error and I wasn't keeping notes. But the basic trick was to right click in device manager on the unknown SAMSUNG_Android device, choose Update Driver, choose "Let me pick", choose "Have disk", point to the "SAMSUNG\USB Drivers\25_escape" folder from the KIES installation, and then choose "Samsung Mobile USB Composite Device".
You may then get another unknown device, which using the same method you set to ADB. I did a bunch of stuff in different ways, trying to match different drivers from the 25_escape folder to different devices, until it finally worked.
http://forum.xda-developers.com/showthread.php?t=1624166
Pull up a commandline, go to Documents and Settings\username\.android directory, and do
Code:
echo 0x04e8 >> adb_usb.ini

this is the code for samsung

Folllowed those instructions, but the usb driver folder C:\Program Files (x86)\Samsung\USB Drivers\25_escape didn't exist in my install.

Went back to the kies site and downloaded the older version of kies and installed

Not in there either.  Fail

http://www.samsung.com/us/function/search/espsearchResult.do?input_keyword=adb&keywords=adb
There is a link in the posts to the lastest adb driver.  it's broken

http://www.samsung.com/us/support/downloads/SPH-P100ZKASPR
selected the carrier and model number
Win XP/Vista/Win 7/Win 8Nov 9, 2012ENGLISH23.06
Doesn't work.

Putting the USB in "Camera" mode left the SAMSUNG_Android in the device manager.  MTP mode
makes it dissapear.  Windows tries to install a driver for it in this mode and fails.


A day of complete frustration.

http://www.mediafire.com/download/5kcxc1yovvl6740/SAMSUNG_USB_Driver_for_Mobile_Phones%282%29.exe

back to google

http://www.droidforums.net/forum/samsung-galaxy-s4/249648-issues-adb.html

Read a bunch of pages about rooting.  I'm doing everything they say.  Fail.

regroup.

Finally tried device manager one more time, right clicked on the unknown device and picked choose from compatible drivers.  Let me pick from a list.  Strangely I got a list of moto and generic adb drivers.  I picked adb composite device.  it installed with a warning.

Now adb devices gives me a response!  Device manager other device dissapeared . So it might not be healthy yet.  ADB Interface device showed up on top of the device manager.

I run ecllipse and I suddenly have a device!   it looks a little broken but finally something is happening.


I find I can't select it.  OK is greyed out .

Try switching to one of the moto composite drivers.  Requires rebooting.  Fail.  Now it has dissapeared again.

Went back to the single composite ADB sooner driver on the list.

Tried to figure out why it was unauthorized

http://stackoverflow.com/questions/19485467/adb-wireless-device-unauthorized

The phone had never asked me to authorize.  I went to the developer settings menu on the phone.
Uncliked usb debug.  Pressed the button that says revoke permissions.   Unplugged the phone.
Plugged it back in, re-enabled usb debug and tadah!  It asked me to give the computer permission.
I did so and and adb devices now says the device is there!

It works!!! OMG.  This was the biggest pain in the arse.  Eclipse now reports the phone there.



I don't know if anyone could follow my notes, and i'm too fed up to clean them up.
The gist is this.

  • 7 pushes on build to enable the developer menu in the phone info screen
  • Go to the now visible developer menu and select USB debugging
  • Install the samsung usb drivers.  Don't know which version really did it, if any.  From Kies or from their website
  • Plug in the phone
  • Tell the USB to go to "camera" mode
  • Go to windows device manager and right click on the unknown samsung device
  • Select browse and select from list
  • Pick adb single sooner driver
  • Go back to the phone developer menu and unauthorize devices.  plug it in again and it should ask to allow the computer to connect.  Say yes.
  • Win!


No comments:

Post a Comment