◎준비물
- testApp.apk : decompile 할 예제 apk 파일
- dex2jar Tool : dex -> jar 변환 해줄때 사용
- jd-gui-0.3.3.window : 변환된 jar 파일을 열어볼때 사용
◎Step
준비물확인 ▶ apk->zip 변경 후 해제 ▶ dex->jar 변환 ▶ jd-gui로 jar파일 오픈 끝
◎Detail Step
1. dex2jar 툴이 제대로 실행되는지 확인
=> 윈도우 -> cmd 창 -> javac 입력, 영어가 길게 뭐라뭐라 나온다 -> 사용가능상태
=> 실행할수없다는 짧은 문장이 나온다-> 사용불가능 상태, jdk 설치후 환경변수를 지정해주어야함
*참고는 저의 티스토리 71
2. jd-gui 툴이 실행되는지 확인
=> 실행파일이, 실행되는지 안되는지 확인. 실행이 안되면, 되는 파일 찾을때까지 이것저것 다운받는다.
3. 이제 decompile 시작
=> test.apk -> test.zip 이름을 변경 시켜준다.
4. test.zip -> 압축 해제 시켜준다.
=> 압축 해제 후 파일중에 classes.dex 또는 classes2.dex 파일이 생성된다.
5. classes.dex 파일형식의 파일들을 복사 해준다.
=> dex2jar 실행파일이 있는 폴더로 복사 해준다.
6. cmd 창을 띄운다.
=> dex2jar 실행파일이 있는 경로로 이동한다 (ex] C:\dex2jar> )
7. 명령어를 입력해서 위에 복사한 classes.dex -> classes.jar 로 변환시켜준다.(모든 classes 들어간 파일 다 변환해준다. 다 열어볼예정)
=> ex] C:\dex2jar>d2j-dex2jar classes.dex
=> 실행하면 "....Detail Error Information ..." 이라는 문구나 나오는데 무시해도된다.(해결방법은 못찾음)
8. 위의 작업에서 생성된 classes.jar 파일을 jd-gui 에서 열어보면 해당 apk 파일에 있는 클래스를 확인 할 수 있다.
* 해당 앱이 난독화가 적용되어있으면, 대부분 a b c d 이런식으로 확인할수있고, 난독화가 적용되어있지 않으면, 클래스르 모두 볼수있다.
- 끝 -
'Android Study' 카테고리의 다른 글
안드로이드 스튜디오 .jar / .aar 라이브러리 추가하는 방법(온라인,오프라인) (0) | 2020.07.08 |
---|---|
Jdk 설치 , 환경변수 설정 (0) | 2020.07.07 |
Android Studio 주석/코드 커스텀 양식 자동생성 (0) | 2020.03.02 |
Notification in Android Note (0) | 2020.02.28 |
Android Push 진동 제어 (0) | 2020.02.26 |