본문 바로가기
Android

APK Decompile(안드로이드 디컴파일 하는 방법)

by ejxousiva(ἐξουσία) 2024. 1. 29.
반응형

일단 가장 유명한 APK Tool을 제외한 다른 2가지 방법을 소개하려고 한다.

1. dex-tools & JD(Java Decompiler)

(웹사이트에서 찾거나, 스마트폰에서 APK 추출 앱을 사용해 만들어서) 먼저 APK 파일을 준비한 후

dex-tools

download dex-tools

 

Releases · pxb1988/dex2jar

Tools to work with android .dex and java .class files - pxb1988/dex2jar

github.com

위 사이트에 접속해서 dex-tools-v2.4.zip(최신버전) 을 다운 받고 압축을 해제한다.

 

d2j_invoke 실행 권한을 주고

cd dex-tools-v2.4
chmod +x d2j_invoke.bat # Windows
# sudo chmod +x d2j_invoke.sh # Mac

d2j-dex2jar를 실행하면서 apk위치를 지정하면

./d2j-dex2jar.bat ../name.apk # Windows
# .d2j-dex2jar.sh ../name.apk # Mac

name-dex2jar.jar 파일이 만들어진다.

JD Project

JD Project

 

Java Decompiler

The “Java Decompiler project” aims to develop tools in order to decompile and analyze Java 5 “byte code” and the later versions. JD-GUI is a standalone graphical utility that displays Java source codes of “.class” files. You can browse the reco

java-decompiler.github.io

위 사이트에서 JD-GUI를 받아서 사용하면 되고,
Eclipse를 사용 중이라면 JD-Eclipse를 받아서 Eclipse에 추가해서 사용해도 된다.

 

JD-GUI는 받아서 바로 사용할 수 있지만, 검색이 안되서 가독성이 매우 떨어진다.

JD-GUI는 압축 해제 후 실행해서 name-dex2jar.jar를 드래그&드롭하면 바로 열린다.

 

 

JD-Eclipse는 설치하는게 GUI 대비 귀찮다.

JD-Eclipse 설치 방법

  1. JD-Eclipse ZIP 파일을 다운로드
  2. 이클립스 실행
  3. Help(도움말) > Install New Software(새 소프트웨어 설치) 클릭
  4. 대화창에서 ZIP 파일을 끌어다 놓기
  5. "Java Decompiler Eclipse Plug-in" 확인
  6. "Next"(다음) 및 "Finish"(완료) 버튼을 클릭
  7. "org.jd.ide.eclipse.plugin_x.y.z.jar" is not signed 경고 대화창이 나타나면 "Install anyway(무시하고 설치)" 버튼을 클릭
  8. Eclipse 재실행 후 jar 파일을 불러오면 볼 수 있다.
  9.  

2. Decompilers online

Decompilers online에 접속해서 APK Decompiler에 준비한 name.apk 를 업로드 하면 알아서 변환해준다.

 

Apktool - decode apk ONLINE with open-source APKTOOL

 

www.javadecompilers.com

Android Studio나 아무 IDE에서 열어서 확인할 수 있다.