>  기사  >  Java  >  안드로이드 디컴파일 도구 및 방법

안드로이드 디컴파일 도구 및 방법

伊谢尔伦
伊谢尔伦원래의
2016-11-26 10:43:571563검색

머리말

때때로 개발 과정에서 어떻게 해야 할지 모르는 기능이 있을 수 있습니다. 그러나 현재 다른 소프트웨어에는 이미 해당 기능이 있습니다. 기능. 프로그램의 일부 사례를 이해하는 동시에 다른 사람의 소프트웨어 구조, 리소스 파일 등에서도 배울 수 있습니다. 하하. 그런 다음 디컴파일에 대한 몇 가지 지식을 주로 세 부분으로 나누어 설명하겠습니다. 첫 번째 부분에서는 디컴파일의 도구와 방법을 소개하고, 두 번째 부분에서는 smali의 구문을 소개하고, 세 번째 부분에서는 디컴파일을 방지하는 방법을 소개합니다. 디컴파일 및 코드 강화 방법을 배울 수 있는 기사입니다.

도구

apktools - 현재 가장 강력한 디컴파일 도구

쉽게 apk를 디컴파일하고, 리소스 파일, xml 파일을 구문 분석하고, smali 파일을 생성하고 수정합니다. APK를 생성하고 싶습니다.

Windows, Linux, Mac을 지원합니다.

다운로드 주소: https://code.google.com/p/android-apktool/downloads/list 사다리를 가져오세요

dex2jar

dex를 넣으세요 apk 파일은 jar 파일로 변환됩니다. 많은 사람들이 smali 파일을 읽는 방법을 모르고 Java 클래스 파일을 보는 것이 더 편합니다. 이때 이 도구를 사용하여 Java로 변환할 수도 있습니다. 리눅스, 맥.

다운로드 주소: http://code.google.com/p/dex2jar/downloads/list

jd-gui

jar 파일을 보면 기본적으로 볼 수 있습니다. java 클래스 파일로, Mac, Windows, Linux도 지원합니다.

다운로드 주소 : http://jd.benow.ca/

apktool의 명령줄 종합 도구 추천 apktool plus

는 사실 다른 사람이 작성한 도구를 조립해서 만든 기능입니다 apktool은 APK 서명도 지원합니다. 최신 버전은 Windows 시스템만 지원하는 v9update6입니다.

다운로드 주소 : http://dl.dbank.com/c0jndlkbu4#

디컴파일

apktools 사용

apktools 디렉토리에서 다음 실행 Command

./apktool d pathtoapk outdir #mac linux
apktool.bat d pathtoapk outdir #window

이렇게 하면 디컴파일이 성공하고 리소스 파일과 리소스 파일을 볼 수 있습니다. smali 파일은 물론 일부 앱은 특수 처리를 거쳤으며 모든 앱을 디컴파일할 수는 없습니다.

동시에 apktool은 디컴파일된 파일을 다음 형식의 apk 파일로 되돌릴 수도 있습니다.

./apktool b apppath outpath

역전된 파일이 서명되지 않은 경우 서명해야 설치할 수 있습니다.

dex2jar 사용

apk 파일 자체는 실제로 zip 압축 패키지입니다. 먼저 apk를 .zip 파일로 변경하고 압축을 풀어classes.dex를 얻습니다. dex2jar 디렉터리로 이동하여 다음 명령을 실행합니다.

./d2j-dex2jar.sh pathtoclasses.dex #mac linux
d2j-dex2jar.bat pathtoclasses.dex #wind

jd-gui로 jar 파일을 열면 java 코드가 들어있는 것을 볼 수 있습니다.

기타

사실 우리가 사용하는 디컴파일만으로는 충분하지 않습니다. 보통 우리는 많은 코드를 처리할 수 없습니다.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.