🔌

Module 5: ADB 무선 디버깅

USB 없이 폰-PC 연결, 스크린샷 캡처, APK 설치, mesh 자동 복구

⏱️ 10분 ⚙️ 개발자 옵션 필수 🔄 mesh 자동 복구

1 ADB란?

Android Debug Bridge — PC에서 폰을 제어하는 표준 도구입니다.

2 초기 설정 (딱 한 번)

ADB 무선 디버깅을 켜는 방법

  1. 개발자 옵션 켜기: 설정 → 휴대전화 정보 → 소프트웨어 정보 → 빌드 번호 7번 터치
  2. 무선 디버깅 켜기: 설정 → 개발자 옵션 → 무선 디버깅 ON
  3. 위젯 8번 실행: Termux 위젯 8번(ADB) 누르면 자동 연결 시도
  4. 연결 실패 시 위젯이 설정 화면을 열어줌
Samsung OneUI 기준

재부팅 후에도 무선 디버깅 설정은 유지됩니다. 다만 TLS 포트가 변경될 수 있는데, 8번 위젯이 자동으로 감지합니다.

3 8번 위젯: ADB 연결

위젯 8번(adb.sh)이 자동 연결하는 순서

1. 이미 연결됨? → ✅ 종료 2. 저장된 TLS 포트로 시도 → ✅ 연결 → 포트 저장 3. TCP 5555로 시도 → ✅ 연결 4. getprop TLS 포트 확인 → ✅ 연결 → 포트 저장 5. 전부 실패 → ❌ 개발자 옵션 설정 열기
$ ADB 직접 연결 명령어
# TCP 5555로 연결 (구형 방식)
adb connect 100.103.250.45:5555
$ TLS 포트로 연결 (신형 방식)
# TLS 포트는 폰에서 확인: getprop service.adb.tls.port
adb connect 100.103.250.45:39705

4 ADB 활용 예시

ADB로 할 수 있는 작업들

📸 스크린샷 캡처
adb exec-out screencap -p > screenshot.png
📦 APK 설치
adb install ~/Downloads/app.apk
📋 파일 복사 (PC → 폰)
adb push file.txt /sdcard/Download/
📋 파일 복사 (폰 → PC)
adb pull /sdcard/DCIM/Screenshots/latest.png .
🔄 폰 재부팅
adb reboot

5 Mesh 자동 복구 (adb_revive.sh)

연결이 끊겼을 때 폰/태블릿끼리 서로 복구하는 시스템

원리

adb_revive.sh는 폰 ADB가 끊겼을 때, WSL에서 다음 순서로 복구를 시도합니다:

1. 이미 연결됨? → 종료 2. nmap으로 폰 열린 포트 스캔 (30000-65535) 3. 발견된 포트에 adb connect 시도 4. 실패 시 → 태블릿(SSH)을 통해 간접 연결 시도 5. 태블릿이 폰에 연결 성공 → WSL도 따라 연결
$ ADB 복구 실행
# 폰 + 태블릿 모두 ADB 연결 시도
bash ~/termux-bridge/install/adb_revive.sh all
$ 폰만 시도
# 폰만 복구
bash ~/termux-bridge/install/adb_revive.sh phone

6 연결 확인

$ 연결된 장치 목록
# 연결된 모든 ADB 장치 표시
adb devices
⚠️ 연결 안 될 때

1. 폰/태블릿 Wi-Fi 연결 확인
2. 개발자 옵션 → 무선 디버깅 ON 확인
3. 같은 Tailscale 네트워크인지 확인
4. 위젯 8번 다시 실행 (또는 adb_revive.sh)

🔌 ADB 무선 디버깅 완료!

← 이전: RustDesk 다음 강의: SSH 5-Lane 터널 →