2011년 6월 3일 금요일

무선 네트워크로 adb 사용

usb 악세서리를 개발하게 되면 폰이 악세서리와 usb 로 연결 되어 있기 때문에 디버깅 하기가 여간 힘든게 아니다.

만약 PC 와 안드로이드 폰이 같은 네트워크 안에 있다면 예를 들어 같은 무선 공유기에 접속해 있다면 adb 를 usb 연결 없이 네트워크로 사용할 수 있다.

참조: http://developer.android.com/guide/topics/usb/index.html 의 Debugging considerations 부분

일반적인 방법
1. PC 와 폰 모두 같은 공유기에 접속한다.
2. PC 와 폰을 usb 로 연결한다.
3. PC 의 terminal 창을 열고 adb 명령을 다음과 같이 수행한다.
 - adb tcpip 5555
 - 이후 부터 usb 연결을 해제해도 된다.
4. 폰의 ip 주소를 확인한다.
 - settings > wireless & networks > wifi settings > 연결된 AP 를 터치 하면 할당된 ip 주소를 확인할 수 있다.
5. PC 의 terminal 창에서 다음과 같이 adb 명령을 수행한다.
 - adb connect [ip address]:5555
 - 예를 들어 폰의 ip address 가 192.168.1.15 이면 adb connect 192.168.1.15:5555 를 수행한다.
6. usb 연결을 해제하고 adb logcat 을 수행해 본다.
 - usb 로 연결할 때와 똑같이 앱 설치 등의 adb 의 모든 명령어를 사용할 수 있다.

안드로이드 폰 벤더가 위 기능을 허용하지 않을 수 있다.
위 방법은 안드로이드 폰 벤더가 기능을 허용한 경우에만 가능한 방법이다.
대부분의 안드로이드 2.2 버전을 포함한 이전 버전의 폰에서는 위 기능이 활성화 되어 있지 않다.
만약 폰을 루팅하였다면 adbWireless 를 다운로드 받아 설치한 후 실행하여 adb wireless 를 활성화 시킨 후 위 과정을 수행하면 무선으로 adb 를 사용할 수 있다.

결론
일반적인 방법을 사용해 보고 만약 연결이 되지 않는 다면 루팅하는 방법을 찾아보고 루팅이 가능하다면 adbWireless 를 사용한 상태에서 다시 위 과정을 수행하면 되겠다.

폰 벤더도 허용을 하지 않고 루팅도 할 수 없다면 사용할 수 없다.

댓글 없음:

댓글 쓰기