차근차근/Android

처음 보는 APK에 Main Activity를 어떻게 찾을까?

예쁜꽃이피었으면 2014. 7. 29. 00:45

http://visu4l.tistory.com/412

 

* 처음 보는 APK에 Main Activity를 어떻게 찾을까?

Main Activity를 찾는 이유는 일반적인 C/C++에서 소스를 분석할때 main 함수부터 시작해 나가는데 

안드로이드에서는 처음 실행되는 Main Activity에 onCreate 함수부터 시작되기 때문이다.

그런데 Main Activity는 개발자 마음대로 이름을 변경할수 있다.

 

그러면 처음실행 되는 Activity를 어떻게 찾는가? 

모든 Activity는 AndroidManifest.xml 에 등록이 되어있어야 사용이 가능하다. 

apktool을 이용하여 디컴파일하면 AndroidManifest.xml 파일도 같이 나온다.

이 파일에 <activity></activity> 부분을 모두 찾는다.

그리고 해당 태그 하위에 <intent-filter> 태그에 <category android:name="android.intent.category.LAUNCHER" />

런처 카테고리 태그를 사용한 액티비티를 찾으면된다.

 

해당 태그가 있다면 <activity android:name=""> 액티비티 태그에 android:name을 찾는다.

해당 name이 처음 구동되는 activity name이다.


반응형