Created
July 27, 2021 13:52
-
-
Save djfm/b3e6fb76f644b3eed49829b771937613 to your computer and use it in GitHub Desktop.
a very simple bash script that helps connect an Android phone to adb when the USB connection is flaky
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
nDevices="0" | |
nTries="0" | |
echo "Looking for connected Android devices..." | |
echo "" | |
while [ $nDevices -lt 1 ] | |
do | |
nDevices="$(($(adb devices | sed '/^\s*$/d' | wc -l)-1))" | |
if [ $nDevices -eq 0 ] | |
then | |
echo "No Android devices found yet," | |
echo "make sure the USB cable(s) is / are plugged correctly," | |
echo "that the developer options are enabled on the device(s)," | |
echo "that USB debugging is enabled on the device(s)" | |
echo "within the developer options you have unlocked," | |
echo "and that you accept the authorization request to allow" | |
echo "your computer to debug the device(s) - it will hopefully" | |
echo "pop on the device(s) once they are detected." | |
echo "" | |
echo "If all fails, try different USB ports," | |
echo "then different USB cables..." | |
echo "" | |
nTries=$(($nTries + 1)) | |
echo "Sleeping a bit in order not to kill the CPU." | |
echo "This was attempt number #$nTries" | |
sleep 1 | |
echo "let's go again..." | |
echo "" | |
fi | |
done | |
if [ $nDevices -eq 1 ] | |
then | |
echo "Yay, found 1 Android device!" | |
elif [ $nDevices -gt 1 ] | |
then | |
echo "Wow, found $nDevices Android devices!" | |
fi | |
echo "" | |
echo "Now enabling adb debugging over WiFi, which is" | |
echo "way, way more convenient." | |
adb tcpip 5555 | |
echo "" | |
echo "Now all you have to do to start a remote debugging session" | |
echo "is to UNPLUG YOUR USB CABLE then" | |
echo "write 'adb connect <ip>:5555' in a terminal," | |
echo "where <ip> is the IP of your phone on your local network." | |
echo "" | |
echo "The phone will forget about this setup every once in a while," | |
echo "so just re-run this tool." | |
echo "" | |
echo "Now UNPLUG USB CABLE" | |
echo "And happy debugging!" | |
# this is the static IP of my phone on my own wifi, | |
# customize to your needs! | |
sleep 5 | |
adb connect "192.168.0.31:5555" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Yeah, last time it took 101 tries to establish the connection... glad I'm not doing it manually.