실수로 Eclipse 에서 프로젝트를 지우고 남은 것은 휴대 전화로 전송 한 APK 파일입니다. 응용 프로그램을 .apk 파일로 내보내는 과정을 되돌려 서 프로젝트를 다시 가져올 수있는 방법이 있습니까?
실수로 Eclipse 에서 프로젝트를 지우고 남은 것은 휴대 전화로 전송 한 APK 파일입니다. 응용 프로그램을 .apk 파일로 내보내는 과정을 되돌려 서 프로젝트를 다시 가져올 수있는 방법이 있습니까?
답변:
알 수없는 APK 파일에서 Java 코드를 생성하는 유용한 도구가 두 가지 있습니다.
도구를 사용하여 APK 파일을 JAR 파일로 변환하십시오 .
$ d2j-dex2jar.bat demo.apk
dex2jar demo.apk -> ./demo-dex2jar.jar
JAR 파일이 생성되면 JD-GUI 를 사용하여 JAR 파일을 엽니 다. Java 파일이 표시됩니다.
출력은 다음과 유사합니다.
d2j-dex2jar
대신 사용하십시오 (v0.0.9.15).
res
폴더에 리소스 파일이 있습니다.
res
읽을 수없는 xml 파일을 가진 폴더를 가질 것입니다
Mac
당신이 dex2jar 사용할 수없는 경우 : permission denied
다음이 수행 $sudo chmod +x d2j-dex2jar.sh
우선 this
비디오를 추천 합니다. 의심 할 여지가 없습니다.
그렇지 않으면 그것을 통해 가십시오
Procedure for decoding .apk files, step-by-step method:
Step 1:
새 폴더를 만들고 .apk 파일을 넣으십시오 (디코딩하려는). 이제이 .apk
파일 의 확장자 를 .zip
(예 : filename.apk에서 filename.zip으로 변경)로 바꾸고 저장하십시오.
.zip으로 변환하는 데 문제가있는 경우 link
이제 .zip 파일을 받으면 classes.dex 파일 등을 얻게됩니다.이 단계에서는 XML 및 Java 파일이 아닌 드로어 블을 볼 수 있으므로 계속하십시오. 확장 프로그램이 보이지 않으면 구성을 확인하십시오.
Step 2:
이제 동일한 zip apk 파일을 동일한 폴더에서 추출하십시오. 이제 여기에서 dex2jar를 다운로드하십시오.link
같은 폴더에 추출하십시오. 이제 명령 프롬프트를 열고 디렉토리를 해당 폴더로 변경하십시오.
그런 다음 작성 dex2jar classes.dex
하고 Enter를 누르십시오. 이제 classes.dex.dex2jar
같은 폴더에 파일이 있습니다.
그런 다음 Java 디 컴파일러를 다운로드하십시오.
이제 jd-gui를 두 번 클릭하고 열린 파일을 클릭하십시오. 그런 다음 classes.dex.dex2jar
해당 폴더에서 파일을여십시오. 이제 src 이름으로 클래스 파일을 가져 와서이 클래스 파일을 모두 저장하십시오 (파일을 클릭 한 후 jd-gui에서 "모든 소스 저장"을 클릭하십시오). 해당 zip 파일을 추출 (classes_dex2jar.src.zip)
하면 응용 프로그램의 모든 Java 파일이 제공됩니다.
이 단계에서 Java 소스를 얻지 만 xml 파일을 여전히 읽을 수 없으므로 계속하십시오.
Step 3:
이제 다른 새 폴더를 열고이 파일들을 넣으십시오
디코딩하려는 .apk 파일을 넣습니다.
대한 Apktool를 다운로드 windows v1.x
및Apktool
구글을 사용하여 창을 설치하고 같은 폴더에 넣으십시오
Google을 사용하여 framework-res.apk 파일을 다운로드하고 동일한 폴더에 저장하십시오 (모든 apk 파일이 framework-res.apk 파일을 필요로하는 것은 아님)
명령 창을 엽니 다
APKtool의 루트 디렉토리로 이동하여 다음 명령을 입력하십시오.
apktool if framework-res.apk.
위의 명령은이어야합니다 Framework installed ...
.
Step 4:
마지막으로 우리는 res/
시작시 우리의 목표 인 프로젝트의 Java 코드뿐만 아니라 코드를 얻었습니다 .
P.S.
위의 단계를 수행하여 res 폴더를 얻을 수없는 경우 새로 설치하십시오apktool
- Java 1.7이 설치되어 있습니까? Apktool 2.x 설치
- Java 1.6 이상이 설치되어 있습니까? Apktool 1.x 설치
Enjoy and happy coding
apktool.jar
같은 패키지가 아닙니다. 이전 패키지에서 가져 와서 같은 디렉토리에 붙여 넣었습니다 apktool
.
소프트웨어가 없거나 너무 많은 단계가 없습니다 ..
이 사이트에서 APK를 업로드하고 모든 리소스를 얻으십시오.
https://www.apkdecompilers.com/
이 웹 사이트는 APK 파일에 포함 된 코드를 디 컴파일하고 파일의 다른 모든 자산을 추출합니다.
참고 :이 웹 사이트에서 APK 파일을 디 컴파일하고 1 분 안에 코드를 얻습니다.
업데이트 1 :
다른 온라인 디 컴파일러 사이트를 찾았습니다.
http://www.javadecompilers.com/apk/- 팝업 차단을 요구하는 지속적으로 작동하지 않음
업데이트 2 :
Play 스토어에서 APK 디 컴파일러 앱을 찾았습니다.
https://play.google.com/store/apps/details?id=com.njlabs.showjava
우리는 안드로이드 폰에서 apk 파일을 디 컴파일 할 수 있습니다. 또한이 응용 프로그램에서 java 및 xml 파일을 볼 수 있습니다
업데이트 3 :
Android Studio 2.2 버전에서 다른 옵션 APK 기능 분석을 사용할 수 있습니다
빌드-> APK 분석-> APK 선택-> 결과 제공
이를 수행하는 새로운 방법이 있습니다.
안드로이드 스튜디오 2.2은, APK에 대한 정보를 많이 제공 여기를 체크 아웃합니다 APK 분석기를 가지고 : - http://android-developers.blogspot.in/2016/05/android-studio-22-preview-new-ui.html
실제로는 아닙니다. smali 또는 dex2jar 와 같이 여러 사람이 읽을 수있는 덱스 디스어셈블러 / 디 컴파일러 스위트가 있으며 , 반인 식적 으로 읽을 수있는 출력을 생성합니다 (dex2jar의 경우 JD-GUI 와 같은 것을 사용하여 Java 코드를 얻을 수 있지만 프로세스는 다음과 같습니다 ) 완벽하지는 않으며 소스 코드를 100 % 다시 만들 수는 없지만 소스 트리를 다시 시작할 수있는 가능성이 있습니다.
예, 프로젝트를 다시받을 수 있습니다. yourproject.apk
파일 이름을로 바꾸면 yourproject.zip
해당 ZIP 파일 내의 모든 파일이 표시됩니다. 파일 확장자를 .apk에서 .zip으로 변경합니다. 해당 ZIP 파일에서 파일을 추출하고 classes.dex
다음 방법으로 디 컴파일하십시오.
먼저, DEX의 모든 (컴파일 된) 클래스를 JAR로 추출하는 도구가 필요합니다. 중국 학생이 만든 dex2jar 이라는 것이 있습니다.
그런 다음 JD-GUI 를 사용 하여 JAR의 클래스를 소스 코드로 디 컴파일 할 수 있습니다 . dex2jar가 일부 최적화를 적용하므로 결과 소스 코드는 상당히 읽을 수 있어야합니다.
Android 플랫폼의 경우 Play 스토어에서 ShowJava 를 사용해 볼 수 있습니다 .
앱 인터페이스를 통해 생성 된 코드를 참조 할 수 있으며 생성 된 Java 파일 및 폴더 구조는 ShowJava
폴더의에 저장되어 변환 /sdcard
결과 .jar
파일 과 함께 저장됩니다 .
기본보기 하단에 광고 배너가있는 앱은 무료이지만 앱을 제거하는 인앱 구매 옵션 (3,99 $)이 있습니다. 인앱 구매는 광고 배너를 제거하는 것 외에 다른 기능을 추가하지 않습니다.
공개 : 나는 어떤 식 으로든 그와 제휴하지 않은 앱 개발자가 아닙니다.
아래 단계에 따라이 작업을 수행 하거나이 프로세스에 apkToJava gem 을 사용 하십시오. 작동하는 데 필요한 도구를 설치하는 작업도 수행합니다.
전문적인 대안을 찾고 있다면 JEB 디 컴파일러를 살펴보십시오. PNF Software의 를 .
대부분의 코드를 디 컴파일 할 수있는 데모 버전이 있습니다.
이 도구를 사용해보십시오 : https://decompile.io , iPhone / iPad / Mac에서 실행됩니다.