Files
linux-env/applications/android-wifi/android-wifi.sh
2025-09-25 07:35:52 +02:00

67 lines
1.9 KiB
Bash

#!/bin/sh
LOG=/tmp/android-wifi.log
echo "===== $(date) =====" >> "$LOG"
# Vérifier adb
if ! command -v adb >/dev/null 2>&1; then
echo "adb non trouvé dans le PATH" >> "$LOG"
exit 1
fi
# Vérifier scrcpy
if ! command -v scrcpy >/dev/null 2>&1; then
echo "scrcpy non trouvé dans le PATH" >> "$LOG"
exit 1
fi
# Chercher device TCP existant
TCP_DEVICE=$(adb devices | awk '$1 ~ /^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:5555$/ {print $1}')
if [ -n "$TCP_DEVICE" ]; then
# Device Wi-Fi déjà actif
echo "Device TCP déjà actif: $TCP_DEVICE" >> "$LOG"
IP="$TCP_DEVICE"
else
# Récupérer un device USB
USB_ID=$(adb devices | awk 'NR>1 && $2=="device" && $1 !~ /:/ {print $1; exit}')
if [ -z "$USB_ID" ]; then
echo "Aucun device USB détecté" >> "$LOG"
exit 1
fi
echo "Device USB détecté: $USB_ID" >> "$LOG"
# Récupérer IP via USB
IP=$(adb -s "$USB_ID" shell ip addr show wlan0 2>>"$LOG" | grep 'inet ' | awk '{print $2}' | cut -d/ -f1)
if [ -z "$IP" ]; then
echo "Impossible de récupérer l'IP du téléphone (wlan0 introuvable)" >> "$LOG"
exit 1
fi
echo "IP détectée: $IP" >> "$LOG"
# Passer en mode TCP
echo "[+] Passage en mode TCP 5555" >> "$LOG"
adb -s "$USB_ID" tcpip 5555 >> "$LOG" 2>&1
# Connexion Wi-Fi
echo "[+] Connexion à $IP:5555" >> "$LOG"
adb connect "$IP:5555" >> "$LOG" 2>&1
# Déconnecter USB pour éviter conflit multiple devices
echo "[+] Déconnexion du device USB $USB_ID" >> "$LOG"
adb disconnect "$USB_ID" >> "$LOG" 2>&1
fi
# Attendre que le device TCP soit prêt
echo "[+] Attente du device TCP $IP" >> "$LOG"
while ! adb devices | grep -q "$IP.*device"; do
sleep 1
done
echo "[+] Device TCP prêt" >> "$LOG"
# Lancer scrcpy
echo "[+] Lancement de scrcpy sur $IP" >> "$LOG"
scrcpy -s "$IP" >> "$LOG" 2>&1
echo "[✓] Fin du script" >> "$LOG"