에뮬레이터가 되긴 하지만, 컴터가 좀 구려서 바로 이전에 쓰던 폰을 테스트 시료로 사용중인데, 이놈이 USB포트 접촉불량이 좀 있다. USB선을 건드리지 않고 쓰는게 너무 스트레스라 찾아보니 역시나 adb를 리모트로 연결하는 법이 있네. 안드로이드 스튜디오에서도 인식해서 무지 편해짐.
1. Android 11 이전 방법
참고로, android 11부터 무선 디버깅(wireless debugging)이 추가 됐다. 먼저 android 11 이전버전에서의 방법을 알아보자. 별로 어렵진 않아서 여기저기 정보들이 있는데, 내가 참고한건 아래 글인데, adb 공식 문서에 자세하고 정확한 설명이 있다.
간단하게 설명하면, 디바이스에서 adb를 위한 TCP/IP port를 열어놓고, PC에서 adb로 디바이스 IP:port 로 연결하는 것. 자세한 방법은 다음과 같다.
1) USB 연결
2) Android Studio 에서 Terminal 실행 : Android Studio 하단에 Terminal을 연다.

3) 다음의 커맨드를 실행해서 adb를 위한 tcpip 포트를 연다.
> adb tcpip 5555
뒤에오는 5555는 포트번호로 사용가능한 포트를 써준다. adb가 터미널에서 실행이 안되면 path지정이 안된 것으로, Android SDK폴더 밑의 platform-tools 에 있으니 그 위치에서 실행해주면 된다.
4) 디바이스는 준비됐으니, USB 연결 해제.
5) 설정> 휴대전화 정보 에서 디바이스의 IP 주소를 확인한다.
6) Android Studio terminal 에서 다음과 같이 connect 명령어로 디바이스에 연결. 뒤에 나오는 값은 아래 내용대로 입력하지 말고, <ip address>:<port> 로 앞에서 사용한 포트와 디바이스에서 확인한 ip address를 사용한다.
# <ip address>:<port> 포맷이니, 값을 본인의 디바이스에 맞게 사용
> adb connect 192.168.0.36:5555

위와 같이 “connected to …” 가 떠야 성공한 것이다.

연결하면 android studio의 디바이스 목록에도 자동으로 디바이스가 추가되는걸 확인할 수 있다.
연결을 해제하고 싶을 때는 다음의 커맨드를 사용한다.
# connect와 마찬가지로 <ip address>:<port> 포맷이다. 사용하는 값을 이용.
> adb disconnect 192.168.0.36:5555
2. Android 11 에서의 방법
update: 2022.05.03 현재 안드로이드 스튜디오 범블비에서 시도해본결과, 가장 깔끔하고 간단한 방법은 뒤쪽에 있는 QR코드 연결이다. 가능하다면, 여기서 설명하는 방법은 건너 뛰고 QR코드를 사용하는게 좋을거 같다.
2-1. 이전 방식처럼 커맨드라인 이용하기
Android 11에서는 무선디버깅을 메뉴에서 지원하며, 이전버전과 다르게 페어링이 완료되어야 사용가능하다. 또한, 사용하는 포트도 매번 연결 시도시 임의로 계속 변경된다. 이 페어링과 임의 포트의 사용은 보안측면에서 이전버전보다 훨씬 향상된 측면이다.
1) 개발자 옵션에서 무선 디버깅(Wireless Debugging)을 선택. IP와 port정보들이 보일 것이다.
2) 페어링 코드로 기기 페어링 선택. 메뉴명이 좀 다를지는 모르겠는데, 암튼 페어링을 선택해준다. 그러면 다음과 같이 페어링 코드와 ip:port 값을 보여줄 것이다.

3) Android Studio에서 terminal 열기. 디바이스는 준비가 되었으므로, 이전 버전들에서 했듯이 PC에서 연결해야한다. 여기서는 Android Studio의 terminal을 이용한다.

4) adb pair 명령을 이용하여 페어링. 이전버전에서는 adb connect를 이용했었다. android 11에서는 먼저 페어링을 해야한다. 다음의 명령어를 입력한다. 페어링 시도시마다 포트가 달라진다는 점을 주의.
# 디바이스에서 확인한 페어링 정보로 입력
> adb pair 192.168.1.130:37099
내가 직접 시도한 화면은 다음과 같다.

페어링 커맨드를 날리면, pairing code를 물어본다. 디바이스에 표시된 코드값을 넣어주면 된다. 그런데, 첫 시도시 계속 실패가 떳었다. 스택오버플로우의 도움을 받았는데, 실패시, wifi를 한번 껐다가 켠 후, 시도하면 성공 할 수있다. 나도 이렇게 성공함.
2022.05.03 update : 안드로이드 스튜디오의 메뉴 기능을 이용한 페어링
안드로이드 스튜디오 범블비 2021.1.1 버전(2022 4월 안정버전 릴리즈)를 사용한다면, 위의 2) 번단계에서와 같이 폰에서 페어링 준비를 하고, 굳이 터미널을 열지 않아도 안드로이드 스튜디오 메뉴에서 제공한다. 연결 기기 표시하는 부분을 보면, 다음 그림과 같이 Pair Devices Using Wi-Fi 라는 메뉴가 있다.

메뉴를 선택하면, 나중에 설명할 QR코드 화면이 나오는데, 두개의 탭이 있고 “pair using pair code”탭이 있는걸 알 수 있다. 해당 탭을 선택한다.

탭을 선택하면, 위 그림처럼 화면이 나오고 wifi 내에서 페어링할 디바이스를 찾는다. 디바이스에서 페어링 준비를 해놨다면, 검색한 디바이스가 그림처럼 뜰 것이다. 여기에서 간단하게 Pair 버튼을 누르면 된다.
Pair 버튼을 누르면 페어링 코드 입력 ui가 그림과 같이 나타난다.

디바이스에 표시된 페어링 코드를 여기에 입력해준다. 디바이스에 페어링된 기기가 뜨면 성공이다.
5) adb connect 명령으로 연결. 페어링이 완료되면, 이전버전과 마찬가지로 adb connect가 사용가능하다. 이를 이용해 연결한다.
> adb connect 192.168.1.130:37099
connect가 성공하면, 이전버전과 마찬가지로 Android Studio에서 디바이스 목록에 해당 디바이스가 떠있는걸 확인할 수 있다. 또한, 디바이스 알람창에도 무선 디버깅 연결됨이 뜨는걸 확인 가능하다.
2022.05.03 update : QR코드 연결 추가
2-2. Android 11 이상에서 QR코드로 연결하기
안드로이드 스튜디오 범블비 2021.1.1 (날짜는 버전이름일 뿐이고 stable 버전 릴리즈는 2022년 4월이다.) 앞의 페어링 방법이 잘 되지 않을 때, 가장 손쉬운 방법이 있다. 바로 QR코드로 연결하는 방법. 릴리즈 노트에 잘 설명되어 있다. 직접 스크린샷을 따려다가, 릴리즈 노트에 있는 animated gif 가 너무 좋아서 그대로 가져와봤다.

실제로 최근 연결시도가 잘 안되서 QR코드를 사용해 연결했고, 페어링과 커넥트 두단계를 거치지 않아도 바로 연동이 되는걸 확인했다. 또한, 한번 연결을 해놓으면, 페어링을 끊어도 다음번에 리모트 디버깅을 활성화시, 자동으로 연결되기도 했다. 현재로서 가장 추천하는 방법이지 않을까 한다.

마무으리…
테스트용 시료로 사용중인 예전폰은 USB연결에 접촉불량이 있고, 현재 쓰고 있는 폰도 이번에 알게됐는데, 충전외에 연결에 문제가 있었다. 지금쓰는 폰은 AS들고가야할듯. 어쨌든, 이런 엿같은 USB문제에도 다행히 무선 디버깅은 다 사용가능했고 한결 쾌적한 개발이 가능해진거 같네.