안녕하세요 IT김군입니다. 오늘은 안드로이드 apk를 디컴파일하는 방법에 대해 알아보겠습니다.


저는 보통 배포하기 전에 proguard로 난독화를 한 후에 apk를 생성하고 그 apk가 난독화가 잘 되었는지 확인하기 위해 디컴파일을 한 번 하여 확인합니다.


안드로이드 apk 파일 디컴파일 하는 방법은


1. 우선 디컴파일에 필요한 파일들을 다운로드 받아야 합니다.


- dex2jar 다운로드





- java-decompiler/jd-gui 다운로드 (플랫폼에 맞는 파일 형식으로 다운로드 하시면 됩니다.)




그 다음 둘 다 압축을 풀어주시고, 위 dex2jar 압축해제했던 폴더에 복호화 할 apk를 넣어줍니다.




저는 테스트로 abc_test.apk 라는 이름으로 진행해보겠습니다.


그 다음 현재 폴더에서 command 창을 열어주신 후 아래와 같이 입력해주세요.



d2j-dex2jar.bat ApkName.apk


해당 명령어를 입력하면 해당 폴더에 아래와 같이 jar 파일이 생깁니다.





아까 다운로드 받았던 gui decompiler의 압축을 풀어서 exe를 실행한 후 해당 apk 파일을 열어주면 디컴파일이 되어서 소스가 보이게 됩니다.


궁금하신 사항 있으시면 댓글 달아주세요.


감사합니다.



WRITTEN BY
IT김군
S/W 개발자 김군의 메모장

트랙백  0 , 댓글  1개가 달렸습니다.
  1. 어플정지 2020.02.10 18:54
    안녕하세요 글쓴이님! 다름이 아니라 루팅된 단말기에서 xposed 모듈 앱을 통하여 단말기 고유번호, mac주소, 전화번호등을 임의로 변경 했을 때 어플 서버 쪽에서 이런 임의로 변경된 데이터를 수집하게끔 수정 하는 기술을 사례금 드리고 좀 배우고 싶은데 가능할까요? 그외에 루팅을 허용 하게끔 수정 하는법도 필요 합니다 사례금은 꼭 드리겠습니다 부탁드립니다 조금 간절 해서요ㅠㅠ

    https://open.kakao.com/o/smSGYUVb

    luispigo615@naver.com
secret