Android
[ADB] 현재 화면에 표시되는 액티비티가 알고싶다면?
StanleyKou
2017. 6. 29. 00:30
안드로이드 앱 개발을 하다보면, 다른 사람의 소스를 받아서 개발해야 할 때가 있습니다. 그럴 때는 그 소스를 분석부터 해야겠죠.
현재 화면에 떠있는 내용이 어떤 액티비티인지 확인할 수 있다면 굉장히 유용할겁니다. ADB를 이용하여 현재 어떤 액티비티가 실행 중인지 알 수 있습니다.
방법1: adb dumpsys activity
액티비티와 관련된 많은 정보를 얻을 수 있는데, 그 중 액티비티 스택(현재 어떤 액티비가 표시되고 있는지, 그리고 그 액티비티를 호출한 액티비티는 어떤 것인지)를 알 수 있습니다. 다음 굵은 글씨 부분을 확인하면 됩니다.
Running activites (most recent first): TaskRecord{ ~~} Run #2: HistoryRecord{ ~~ com.kou.example/.ui.MainActivity2 } Run #1: HistoryRecord{ ~~ com.kou.example/.ui.MainActivity1 } ... ...
|
방법2: 만약 맥북이나 리눅스 환경에서 개발하고 있다면, grep (검색 내용 안에서 검색하기) 기능을 이용해서 훨씬 유용한 정보를 얻을 수 있습니다.
adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'
이렇게 하면 현재 포커스 된 액티비티 하나만 출력됩니다.