[ 예제로 시작하는 안드로이드 개발(에이콘/릭 로저스 외 지음/ 978-89-6077-097-3) ]

APP이 제대로 동작한다고 해도 너무 느릴 수 있다. 애플리케이션 내 메소드가 서로 어떻게 상호작용하는지 알고 각 메소드에서 머무는 시간이 얼마인지 측정할 수 있다.
이 프로그램은 두 개의 부분으로 나뉘는데 첫째는 애플리케이션을 실행하기 전에 돌려야 하고, 나머지 부분은 실행을 마치고 나서 분석하기 위해 돌려야 한다.

런타임 데이터 수집
애플리케이션 로그를 켜거나 끌 수 있다. 이 기능을 켜두면 트레이스 수집용 메소드가 애플리케이션에 링크돼 타겟 시스템에 바이너리 트레이스 파일을 만든다. 이 트레이스 파일에는 모든 메소드 초기화와 각 메소드에서 머문 시간의 기록이 있다.

트레이스 분석
이 바이너리 트레이스 파일을 타겟 장치에서 컴퓨터로 복사한 후 트레이스 분석 프로그램을 돌려 파일의 모든 정보를 그래픽 환경에서 볼 수 있다. 애플리케이션이 어느 메소드에서 가장 많은 시간을 소비하는지, 그리고 해당 메소드는 어느 메소드를 호출 하고, 거기에서는 얼마나 많은 시간을 소비하는지를 알아볼 있다.

트레이스 데이터 수집
  1. 애플리케이션에 디버그 패키지(android.os.Debug)를 import한다.
  2. 트레이스 정보 수집을 시작하려는 지점에서 Debug.startMethodTracing()을 호출한다.
  3. 수집을 멈추려는 지점에서 Debug.stopMethodTracing()을 호출한다.
이 메소드는 항상 트레이스 정보를 타겟 시스템의 SD 카드에 저장한다.

$ adb pull sdcard/x.trace x.trace
$ traceview [pathname]x.trace

트랙백 주소 :: http://www.mirwing.com/176/trackback/
옵션
댓글 달기