Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use adb tcpip without USB debugging enabled?

I've read quite a few posts already on adb and tcpip mode and I can create a wireless adb connection, but only when USB debugging is on.

The way I'm using it is like so:

  1. USB debugging is enabled
  2. call adb tcpip on the computer (switches from usb to tcpip mode with default port 5555)
  3. call adb connect PHONE_IP and a connection is made

The above works with or without the usb cable being connected, but only when the USB debugging option is ticked in Developer Options on the Android device. As soon as I untick the option, the tcp connection is lost and cannot be re-established until re-enabling the USB debugging option.

The problem is I'm getting started with a IOIO OTG device and I need to disable USB debugging to use the IOIO as an Accessory Device. It would be really useful if I can use the IOIO and debug with adb at the same time.

I'm using Android 4.1.2 (API 16) on the device. I can use two devices, both using the same OS version, one rooted, one un-rooted.

Is it possible to use adb in tcpip mode without USB debugging enabled ? If so, how ?

like image 330
George Profenza Avatar asked Oct 28 '13 18:10

George Profenza


People also ask

Can ADB work without USB debugging?

Guest. You can run ADB in Wireless Mode. means no USB-cable connection is required.

Can you use ADB without USB?

Android WIFI ADB is a plugin available in Android Studio that helps you to connect your system to devices over a Wi-Fi network. It allows you to quickly connect your Android device over Wi-Fi by pressing one button, to install, run, and debug your applications without a USB connection.

How do I enable ADB over TCP IP?

Type adb tcpip 5555 in the command line or Terminal and press Enter. Find your phone's IP address in Settings > About Phone > Status > IP Address. Back in the command line or Terminal, type adb connect [your Android's IP address]. Finally, press Enter again.


1 Answers

On your rooted device, install a Terminal Emulator

enter "su" and then "start adbd" (source)

I have tried this on my rooted Android 4.0.4 device. I could connect normally without enabling USB debugging. A few more words:

  • "USB Debugging" is actually called "enable_adb" internally.
  • If you enable USB Debugging this usually happens(little device dependant):
  • a Settings.Secure value is stored (ADB_ENABLED)
  • (on some devices also a system property is set)
  • the adb deamon is started

If the UsbManager just checks for the Secure Setting, everything should work. If it checks for the actual running deamon you are out of luck.

like image 185
Robin Gawenda Avatar answered Sep 20 '22 00:09

Robin Gawenda