ADB Connection Problems

This section covers common problems when connecting the device to the PC using ADB.

Problem 1 — adb connect gives Error 10060

Example error:

text
cannot connect to 192.168.1.15:5555:
A connection attempt failed because the connected party
did not properly respond after a period of time.

This usually means that the PC cannot reach the phone at the specified IP address and port.

Check 1 — Make sure both devices are on the same network

The PC and phone should be connected to the same local network. For example:

flowchart LR PC[PC] --> R["Wi-Fi Router"] Phone[Phone] --> R

They should normally have addresses in the same subnet, such as:

text
PC:    192.168.1.x
Phone: 192.168.1.x
Note

The exact IP addresses do not have to be identical. Only the network/subnet needs to allow communication between them.

Check 2 — Find the phone's current IP

Connect the phone through USB and run:

bash
adb shell ip addr show wlan0

Look for:

text
inet 192.168.1.x/24

Then use that IP:

bash
adb connect PHONE_IP:5555

For example:

bash
adb connect 192.168.1.15:5555
Warning

Do not assume that 192.168.1.15 is always the phone's IP. The address can change when the phone reconnects to Wi-Fi.

Check 3 — Restart ADB TCP/IP mode

With USB connected:

bash
adb tcpip 5555

Expected:

text
restarting in TCP mode port: 5555

Then disconnect USB and try:

bash
adb connect PHONE_IP:5555

Problem 2 — adb devices shows offline

Example:

text
List of devices attached
b4t543re    offline

This means ADB can see the device but cannot communicate with it correctly.

Try restarting the ADB server:

bash
adb kill-server
adb start-server
adb devices

If it still shows offline:

  1. Disconnect the USB cable.
  2. Turn USB debugging off.
  3. Turn USB debugging back on.
  4. Reconnect the USB cable.
  5. Accept the Allow USB debugging? prompt on the phone.
  6. Run:
bash
adb devices

Expected:

text
List of devices attached
b4t543re    device
Important

Do not continue to wireless setup until the USB device shows device instead of offline.

Problem 3 — adb devices shows no device

Example:

text
List of devices attached

with nothing underneath it.

Check the following:

  • USB cable is properly connected.
  • USB debugging is enabled.
  • Phone is unlocked.
  • USB debugging authorization was accepted.
  • Try another USB port.
  • Try another USB cable.
  • Restart the ADB server.

Run:

bash
adb kill-server
adb start-server
adb devices

If the phone asks:

text
Allow USB debugging?

tap Allow.

Problem 4 — adb says more than one device/emulator

Example:

text
adb.exe: error: more than one device/emulator

This can happen when ADB detects multiple devices, emulators, or stale ADB connections.

First check:

bash
adb devices -l

Example:

text
List of devices attached
192.168.1.15:5555    device
emulator-5554        device

If multiple devices are listed, specify the target device:

bash
adb -s DEVICE_SERIAL shell

For example:

bash
adb -s 192.168.1.15:5555 shell
Important

If adb devices -l shows only one device but ADB still reports more than one device/emulator, this may indicate an ADB-server or toolchain issue rather than an actual second device. Restarting the ADB server is a good first step:

bash
adb kill-server
adb start-server
adb devices -l

Problem 5 — Multiple adb.exe installations

Check which ADB executables are available:

bash
where adb

You may see something like:

text
C:\Users\\AppData\Local\Android\Sdk\platform-tools\adb.exe
C:\scrcpy-win64-v3.3.3\adb.exe

Multiple copies of ADB can sometimes make troubleshooting confusing.

Check the version of the Android SDK ADB:

text
"C:\Users\\AppData\Local\Android\Sdk\platform-tools\adb.exe" version

Example:

text
Android Debug Bridge version 1.0.41
Version 36.0.0-13206524
Tip

If you have multiple ADB installations, preferably use the ADB from Android SDK → platform-tools.

You can also check which ADB server is currently running:

bash
tasklist | findstr /i "adb"

If necessary, stop and restart it:

bash
adb kill-server
adb start-server

Problem 6 — adb reverse gives more than one device/emulator

React Native may show:

text
adb.exe: error: more than one device/emulator

when trying:

bash
adb reverse tcp:8081 tcp:8081

If multiple devices are connected, specify the device:

bash
adb -s PHONE_IP:5555 reverse tcp:8081 tcp:8081

For example:

bash
adb -s 192.168.1.15:5555 reverse tcp:8081 tcp:8081

Then verify:

bash
adb -s 192.168.1.15:5555 reverse --list

Expected:

bash
192.168.1.15:5555 tcp:8081 tcp:8081
Note

adb reverse is normally useful when the device is connected through ADB and the Android device needs to access a service running on the PC.

Problem 7 — ADB connects but React Native says "No apps connected"

You may see:

text
INFO  Dev server ready.

followed by:

text
warn No apps connected.

This does not necessarily mean ADB is broken.

First check:

bash
adb devices

You need to see:

text
PHONE_IP:5555    device

Then make sure the React Native application has actually been installed and launched.

Tip

If the APK was successfully installed but Metro cannot connect, continue to the Metro / Port 8081 troubleshooting section.

Problem 8 — ADB connection works but APK installation fails

If you see:

text
Installing APK 'app-debug.apk'

then ADB has already detected the phone.

At this point, don't immediately troubleshoot the Wi-Fi connection. Instead, read the actual installation error.

For example:

text
InstallException: EOF

or:

text
Requested internal only, but not enough space

These are installation/device problems and should be investigated separately.

Quick ADB Recovery

If ADB starts behaving strangely, try this sequence:

bash
adb kill-server
adb start-server
adb devices

If using USB:

bash
adb tcpip 5555

Find the phone's IP:

bash
adb shell ip addr show wlan0

Disconnect USB and reconnect:

bash
adb connect PHONE_IP:5555

Finally verify:

bash
adb devices

Expected:

text
List of devices attached
PHONE_IP:5555    device

ADB Connection Checklist

Before moving to React Native:

  • Developer Options enabled
  • USB debugging enabled
  • USB connection works
  • adb devices shows device
  • adb tcpip 5555 succeeds
  • Phone and PC are on the same network
  • Current phone IP was checked
  • adb connect PHONE_IP:5555 succeeds
  • adb devices shows PHONE_IP:5555 device
  • No unexpected extra devices/emulators are connected

Once all of these are working, ADB wireless debugging is ready for React Native.