See forum post Any way to view Android screen remotely without root? - Post #9.
- Connect the device via USB and make sure debugging is working;
adb tcpip 5555. This makes the device to start listening for connections on port 5555;
- Look up the device IP address with
adb shell netcfgor
adb shell ifconfigwith 6.0 and higher;
- You can disconnect the USB now;
adb connect <DEVICE_IP_ADDRESS>:5555. This connects to the server we set up on the device on step 2;
- Now you have a device over the network with which you can debug as usual.
To switch the server back to the USB mode, run
adb usb, which will put the server on your phone back to the USB mode. If you have more than one device, you can specify the device with the
adb -s <DEVICE_IP_ADDRESS>:5555 usb.
No root required!
To find the IP address of the device: run
adb shell and then
netcfg. You'll see it there. To find the IP address while using OSX run the command
adb shell ip route.
WARNING : leaving the option enabled is dangerous, anyone in your network can connect to your device in debug, even if you are in data network. Do it only when connected to a trusted Wi-Fi and remember to disconnect it when done!
@Sergei suggested that line 2 should be modified, commenting: "-d option needed to connect to the USB device when the other connection persists (for example, emulator connected or other Wi-Fi device)".
This information may prove valuable to future readers, but I rolled-back to the original version that had received 178 upvotes.
On some device you can do the same thing even if you do not have an USB cable :
- Enable ADB over network in developer setting It should show the IP address
adb connect <DEVICE_IP_ADDRESS>:5555
- Disable the setting when done
Using Android Studio there is a plugin allowing you to connect USB Debugging without the need of using any ADB command from a terminal.