2012-09-14 2 views
0

불행히도 컴퓨터를 도난 당했으며 자동 클라우드 서비스 백업이 자동으로 보이지만 몇 달 전에 중지되었습니다. 그래서 내 안드로이드 애플 리케이션을위한 모든 이클립스 소스 파일을 잃어 버렸다.Android 전화에서 Eclipse로 APK 파일 복구

나는이 모든 파일을 복구하려고하고 있으며 마지막 단계를 도와 줄 수 있기를 바랍니다.

그래서, 내가 무슨 짓을했는지 :

  1. Play 스토어에서

    다운로드 아스트로 파일 관리자 : https://play.google.com/store/apps/details?id=com.metago.astro&hl=en

  2. 아스트로 파일 관리자로 내 응용 프로그램을 백업하고 컴퓨터에 내 SD 카드에서 그들을 복사 .

  3. 은 APK 툴 다운로드 : http://code.google.com/p/android-apktool/ ( apktool-install-windows-r04-brut1.tar.bz2apktool1.4.3.tar.bz2)를 상기 c:\windows 폴더로 추출 하였다.
  4. 는 APK 디코딩 : 지금까지 apktool d name.apk

너무 좋아,하지만 나는 여기 붙어있어.

나는 다음과 같은 폴더를 얻을

: 나는 안드로이드 프로그래밍에 아주 새로운 해요 이후 res

입술 폴더 smali 내 모든 자원을 포함,하지만 ...

내 모든 파일을 볼 수 있습니다 src 폴더의 Eclipse에 있던 파일은 이제 smali 폴더에 있고 .smali 확장자가 있지만 완전히 다르게 보입니다.

"정상"(Java 코드)으로 되돌릴 수있는 방법이 있습니까? 어떤 종류의 도구/트릭 단계별로?

감사합니다.

내가이 블로그를 따라 온 :

그러나 dex2jar 파일을 압축 해제 한 후 이클립스가 .class 파일을 열 수 없습니다 http://jack-mannino.blogspot.com.es/2010/09/reversing-android-apps-101.html. 도움이 될만한 사람이 있습니까? 또한 파일 이름 뒤에 $ 1, $ 2 등은 무엇을 의미합니까?


OK, 기본적으로 내가 무슨 짓을했는지,하지만 난 마지막 단계 (내가 추측하고있어) 누락 :

  • 가 설치 아스트로 파일 관리자
  • 이 응용 프로그램
  • 에게 백업 된을 APK를 복사하고 dex2jar : 'd2j-dex2jar c : \ apk \ myappname.apk'을 사용하여 jar 파일을 만들었습니다.
  • 생성 된 JD (http://java.decompiler.free.fr/?q=jdgui) zipfile
  • 은 zip 파일을 추출했습니다.

그래서 모든 소스 코드를 볼 수 있지만 매니페스트가 누락 된 것처럼 보입니다. 그래서 Eclipse는 여전히 프로젝트로 열지 않습니다.

아무도 내게 마지막 팁을 줄 수 있습니까? 고마워요!

+0

안녕 라스 압축을 해제해야합니다 그것을위한 어떤 해결책있어? 네가 해답을 찾으면 나 한테 대답 해줘. –

답변

1

이런 종류의 상황에서 최선의 시도는 dex2jar 도구를 사용하여 apk (실제로는 dex)를 jar 파일로 변환하고 jd과 같은 Java 디 컴파일러로 검사하는 것입니다.

그러나 때때로 JD가 잘못된 자바 소스를 생성하므로 apktool에서 얻을 수있는 클래스의 smali 코드를 참조해야 할 수 있습니다. 여기

는 달빅 옵 코드이다 : 마지막 http://s.android.com/tech/dalvik/dalvik-bytecode.html

그 $ 1 클래스 이름 후 $ 2 내부 클래스이 클래스에서 사용되는 것을 의미한다.

0

사용 axmlprinter이 당신에게 .. 매니페스트를 디코딩 (대부분의 경우 작동하지 않는 apktool) 그래서 덱스 2 항아리를 사용하고 AXMLprinter2을 이용해 파일 내가 같은 문제에 직면하고있다