adb(Android Debug Bridge)

안드로이드는 리눅스를 기반으로 하였기 때문에 adb(Android Debug Bridge) 의 모든 기능은 커맨드 명령어로 가능하다. 기기가 없을 때 개발시 에뮬레이터를 띄워 작업을 하게 되는데, 이 에뮬레이터와 인터페이스를 해 여러가지 작업을 할수 있도록 도와주는 것이 adb(Android Debug Bridge) 유틸이다. 이름에서 알수있듯이 안드로이드 장치를 조작할수 있는 다리 역할을 한다.

– 주요 명령
adb devices
adb 서버가 인식한 휴대폰과 에뮬레이터 목록을 보여준다. 연결된 devices의 TCP/IP 포트 번호를 알아낼 때 도움이 된다. -s나 -e 옵션은 여러 개의 장치를 연결했을 때 특정한 디바이스를 지정할 때 사용한다.

adb shell
타겟 시스템의 쉘에 연결하고 # 프롬프트를 띄운다. 쉘은 간소한 유닉스 쉘 같아서 간단한 명령으로 타겟 시스템을 탐색하고 수정할 수 있다.

adb logcat [filter_spec]
로그캣 로그를 타겟 시스템에서 볼 수 있는 명령. 현재까지 축적한 모든 로그를 터미널에 출력하고 시스템이 실행중인 동안 발생하는 추가적인 로그도 계속 출력한다. 이 명령은 주로 맨 뒤에 &를 붙여서 실행하는데, 이 기호를 명령 뒤에 붙이면 유닉스에서처럼 ‘별도의 프로세스로 이 명령을 실행하라’는 뜻이 된다.
adb logcat AndroidRuntime:E &
adb -b radio &
adb -b events &

adb install [-l][-r] file_spec
app을 설치하거나 재설치할 때 사용한다.
-l : 다른 장치로 복사돼 넘어가는 것을 막는다.
-r: 이미 존재하는 app 데이터를 지우지 않은 채 어플리케이션을 재설치 한다.
file_spec: 설치할 app의 .apk 파일

adb uninstall [-k] package
패키지 이름을 가진 app을 제거하다.
-k : app의 데이터를 보존한다.
package: 패키지의 전체 경로, .apk 확장자는 빼야 한다.

adb push local remote
개발자 컴퓨터에 있는 local이란 이름을 가진 파일을 타겟 시스템에 remote란 이름으로 복사한다.

adb pull remote local
타겟 시스템에 있는 remote라는 파일을 개발자 컴퓨터에 local이란 이름으로 복사한다.

기타 자세한 명령어 들은 다음 URL에서 확인 할 수 있다.
http://d.android.com/guide/developing/tools/adb.html
——————————————————————————————————————–

kill-server와?start-server?명령어는 이상이 있거나 죽었을 때 모두 죽이고 새로?기동하기 위한 명령어 이다.

Desktop?에서 안드로이드기기(에뮬레이터)?로 파일을 을 때?push?를 사용한다.

제대로 연결이 안되면?Read-only file system?에러가 난다.?다시 제구동해서 테스트 해보자
?다시?Desktop?으로 복사하기 위해서는?pull?명령어를 사용한다.


remount 는 장치에 있는 /system 영역을 읽고 쓸수 있도록 연결하는 명령어 이다.

logcat 은 이클립스에 있는것과 같이 에뮬레이터의 동작에 대한 로그를 볼수 있다.
이클립스 내부에 있는 Logcat explorer 는 잘 되다가 몇번 에뮬레이터를 재기동 하게
되면 제대로 출력을 하지 못한다. 그리고 로그를 보기 위해 키웠다 줄였다 해야되는
불편함이 있어 개발시에는 아예 cmd창을 하나 열어 Alt + Tab 으로 전환해 가며
진행하고 있다.

 

출처 😕http://odin.80port.net/blog2/hstech/310

Leave a Reply

Your email address will not be published.