안드로이드 무선 디버깅을 안전하게 쓰는 법, ADB 연결·페어링·해제 순서
AI를 활용하여 생성한 이미지입니다.
안드로이드 개발자 옵션을 켜고 USB 디버깅까지 활성화하면, PC에서 adb로 앱을 설치하거나 로그를 읽을 수 있어요. 여기서 한 단계 더 나아가면 케이블 없이 무선 디버깅을 사용할 수 있습니다. Android 11 이상은 무선 디버깅을 지원하고, PC와 휴대전화가 같은 Wi-Fi에 있어야 페어링할 수 있어요.[1]
편리하지만 연결을 한 번 허용한 뒤 잊어버리기 쉽다는 점이 문제예요. 페어링된 PC는 사용자가 직접 잊기 처리하거나 디버깅 권한을 철회할 때까지 남을 수 있습니다.[2] 이 글에서는 개발자 옵션을 처음 찾는 방법보다, 이미 adb를 쓸 줄 아는 분이 연결 상태를 확인하고, 여러 기기를 구분하고, 작업이 끝난 뒤 흔적을 정리하는 순서를 다룹니다.
USB 디버깅과 무선 디버깅은 다르게 봐야 해요
USB 디버깅은 케이블로 연결된 PC가 Android Debug Bridge를 통해 기기와 통신하도록 허용하는 설정이에요. Android 공식 문서의 기본 확인 명령은 adb devices이고, 정상 연결된 기기는 상태가 device로 표시됩니다.[2]
무선 디버깅은 같은 기능을 Wi-Fi로 옮긴 것이지만, 단순히 IP 주소와 포트만 입력하는 방식으로 생각하면 안 돼요. Android 11 이상에서는 휴대전화의 무선 디버깅 화면에서 페어링 코드나 QR 코드를 사용해 워크스테이션을 신뢰 목록에 넣습니다.[2] 페어링과 실제 연결은 별도 단계라서, 페어링 코드 입력이 끝났는데도 adb devices에 기기가 안 보일 수 있어요.
연결 전에 개발자 옵션을 정리해요
설정 앱에서 개발자 옵션이 보이지 않으면 기기의 빌드 번호를 일곱 번 탭해 개발자 옵션을 활성화합니다. 제조사와 Android 버전에 따라 메뉴 위치나 이름은 달라질 수 있어요.[3]
그 안에서 USB 디버깅 또는 무선 디버깅을 켭니다. Android 16 이상에서는 무선 디버깅 경로가 설정 > 시스템 > 개발자 옵션 > 무선 디버깅으로 안내되고, 버전에 따라 메뉴가 조금 달라질 수 있습니다.[3] 설정 이름이 다르다고 해서 임의의 “네트워크 디버깅” 옵션을 켜기보다, 무선 디버깅 화면 자체를 찾아야 해요.
처음 연결할 때 휴대전화에 RSA 키 승인 대화상자가 나타날 수 있습니다. Android는 이 승인 절차로 USB 디버깅과 adb 명령이 잠금 해제된 기기에 바로 실행되지 않도록 보호합니다.[1] 공용 PC나 다른 사람의 PC라면 “항상 허용”을 누르지 않는 편이 안전해요.
USB로 한 번 연결해 기준 상태를 만들기
무선 연결이 처음부터 꼬였다면 USB 케이블로 기준 상태를 확인하는 것이 빠릅니다. PC의 Android SDK platform-tools 디렉터리에서 다음 명령을 실행하세요.
adb kill-server
adb start-server
adb devices -l
목록이 비어 있으면 케이블·USB 모드·드라이버·휴대전화의 USB 디버깅을 차례로 점검합니다. macOS는 Android 공식 문서상 별도 USB 드라이버 설정이 필요하지 않지만, Windows는 기기 제조사에 따라 OEM USB 드라이버가 필요할 수 있어요.[1]
기기가 unauthorized로 보이면 휴대전화 화면을 확인해 RSA 키를 승인하세요. offline이면 케이블을 다시 꽂는 것보다 먼저 화면 잠금이 풀려 있는지, 디버깅 승인이 취소되지 않았는지, ADB 서버가 오래된 연결을 잡고 있지 않은지 확인하는 편이 낫습니다.
Android 11 이상에서 무선 페어링하기
- PC와 휴대전화를 같은 Wi-Fi에 연결합니다. 게스트 네트워크나 기기 간 통신을 막는 사내·공용 네트워크에서는 검색과 연결이 실패할 수 있어요.
- 휴대전화에서 개발자 옵션 > 무선 디버깅을 열고 기능을 켭니다.
- 페어링 코드로 기기 페어링을 선택해 IP 주소, 포트, 페어링 코드를 확인합니다. Android 공식 절차도 이 정보를 사용하도록 안내합니다.[2]
- PC에서 다음 명령을 실행하고, 휴대전화에 표시된 값을 그대로 입력합니다.
adb pair <device-ip>:<pairing-port>
# 휴대전화에 표시된 6자리 페어링 코드 입력
adb connect <device-ip>:<adb-port>
adb devices -l
여기서 pairing-port와 adb-port는 같은 값이라고 가정하면 안 됩니다. 무선 디버깅 화면에 각각 표시된 포트를 확인해 따로 입력하세요. adb pair가 성공해도 실제 장치 연결은 adb connect 단계에서 다시 해야 합니다.
최종 목록에 <device-ip>:<adb-port> device가 표시되면 연결된 상태예요. Android 공식 문서도 여러 기기가 연결된 경우 adb devices -l로 기기 설명을 확인하고, 명령 대상이 여러 개면 -s로 일련번호를 지정하라고 안내합니다.[2]
여러 기기를 연결할 때 생기는 실수
에뮬레이터와 실제 휴대전화를 동시에 연결해 두면 다음과 같은 오류가 나올 수 있어요.
adb: more than one device/emulator
이때 기본 기기를 추측하지 말고 목록에서 시리얼을 복사해 명시하세요.
adb devices -l
adb -s <serial> shell getprop ro.product.model
adb -s <serial> logcat -d -t 100
공식 문서에서 -s는 특정 장치를 지정하는 옵션으로 설명됩니다.[2] 모델명만 보고 구분하기 어려우면 무선 연결의 IP:포트 시리얼과 USB 기기의 시리얼을 함께 기록해 두세요. 설치·삭제·로그 수집 명령을 잘못된 기기에 보내는 사고를 줄일 수 있습니다.
연결이 끊길 때 진단 순서
| 상태 | 가능성이 큰 원인 | 확인 순서 |
|---|---|---|
| 목록에 없음 | 페어링 또는 연결 미완료 | 무선 디버깅 화면의 포트와 adb connect를 다시 확인 |
unauthorized |
RSA 승인 대기 | 휴대전화 잠금을 풀고 승인 대화상자 확인 |
offline |
끊긴 세션이나 네트워크 변경 | Wi-Fi 동일 여부 확인 후 adb disconnect 재연결 |
| 연결 직후 끊김 | 게스트·격리 Wi-Fi | 기기 간 통신을 허용하는 다른 네트워크에서 재확인 |
| 여러 기기 오류 | 대상 미지정 | 모든 명령에 -s <serial> 추가 |
문제가 계속되면 PC와 휴대전화 양쪽의 무선 디버깅을 껐다 켜고, ADB 서버를 재시작합니다.
adb disconnect
adb kill-server
adb start-server
adb connect <device-ip>:<adb-port>
adb devices -l
이 과정은 페어링 정보를 무조건 지우는 명령이 아니에요. 계속 실패한다면 휴대전화의 무선 디버깅 화면에서 현재 PC 이름을 Forget으로 제거한 뒤 다시 페어링하세요.
작업이 끝나면 신뢰 관계를 지워요
무선 디버깅은 작업이 끝나면 끄는 것만으로 끝내지 않는 편이 좋아요. Android 공식 문서는 무선 디버깅 화면에서 페어링된 워크스테이션 이름을 누르고 Forget을 선택하는 방법을 안내합니다.[2] 모든 PC의 권한을 한 번에 철회하려면 설정 화면의 Revoke adb debugging authorizations를 사용할 수 있어요.[2]
개발자 옵션을 계속 쓸 예정이라면 무선 디버깅만 끄고, 한동안 사용하지 않을 예정이면 개발자 옵션의 상단 스위치까지 꺼 두는 방식이 관리하기 쉽습니다. 권한을 철회하면 다음 작업 때 RSA 승인이나 무선 페어링을 다시 해야 할 수 있으니, 반복 업무용 PC와 일회성 PC를 구분해 처리하세요.
실제로 적용할 체크리스트
- 작업 전
adb devices -l로 대상 기기의 시리얼을 확인하세요. - 공용·게스트 Wi-Fi 대신 기기 간 통신이 가능한 신뢰할 수 있는 네트워크를 사용하세요.
- 페어링 포트와 실제 연결 포트를 무선 디버깅 화면에서 따로 확인하세요.
- 여러 기기가 보이면 모든 명령에
-s를 붙이세요. - 작업이 끝난 뒤 무선 디버깅을 끄고, 일회성 PC는 페어링 목록에서 Forget 처리하세요.
- 기기를 다른 사람에게 넘기기 전에는 Revoke adb debugging authorizations로 승인 목록을 비우세요.
자주 묻는 점
Android 10 이하에서도 같은 방식으로 되나요?
Android 10 이하에서는 Android 11 이상의 무선 디버깅 페어링 흐름과 다릅니다. 공식 문서는 USB로 먼저 연결한 뒤 adb tcpip 5555와 adb connect를 사용하는 별도 절차를 설명해요.[2] 기기와 플랫폼 도구 버전에 맞는 문서를 확인한 뒤 적용하세요.
페어링 코드를 다른 사람에게 보여줘도 되나요?
필요한 PC에서 직접 입력하는 용도로만 사용하세요. 무선 디버깅은 같은 네트워크에서 동작하므로, 공용 네트워크에서 기능을 켜 둔 채 코드를 공유하는 방식은 피하는 편이 안전합니다.
device라고 나오면 모든 명령이 안전한가요?
아니요. device는 ADB 서버가 연결된 기기를 보고한다는 뜻이지, 명령의 대상이 맞다는 뜻은 아니에요.[2] 여러 기기를 쓸 때는 시리얼을 지정하고, 설치·삭제·데이터 변경 명령은 실행 전에 대상 기기를 한 번 더 확인하세요.
Android 개발자 옵션을 처음 켜는 과정이 필요하다면 아이폰·안드로이드 패스키 설정 글처럼 기기 보안 설정을 함께 점검하는 흐름도 참고할 수 있어요. ADB는 편한 개발 도구지만, 신뢰한 PC 목록을 방치하면 편리함이 관리 부담으로 바뀝니다.
[…] 글에서 다룬 ADB 무선 디버깅의 페어링과 해제 절차는 Android 무선 디버깅 점검 글에서 이어서 확인할 수 있어요. App Links 문제는 네트워크 연결 자체보다 […]