본문 바로가기
스마트폰 관련

Apk manager 로 Apk 디컴파일링과 컴파일링 및 사인 작업하기

by 마징가_Z 2012. 3. 26.
반응형

저도 처음에 제대로 하는 방법을 알지 못해서 엄청 많은 시도를 했네요.

하지만 많은 착오로 성공을 하게되었습니다. 그래서 정보를 공유하고자 글을 씁니다.

이 설명은 OS로 윈도우7 64비트를 사용를 기준으로 설명 하였습니다.


※ 제가 이 글을 썼을때는 자바가 꼬였는지 Java 설치만으로는 Apk manger 가 되지 않아서

따로 안드로이드 SDK 까지 깔아서 따로 설정을 했는데요.

이번에 새로 포맷을 하고 나서 해보니 Java 설치 후 → Cmd 에서 Java 인식 확인하니 바로 되더군요.

즉, 안드로이드 SDK 까지 설치할 필요가 없더군요.

그러니 Java 설치 후 → Cmd 에서 Java 인식 확인이 되는지 꼭 확인하세요!!

만약 인식이 안되면 그때 안드로이드 SDK를 설치 하세요!!





[Java Platform (JDK) 7u3 다운 및 설치하기]

 

 


(↑ 클릭)


위 링크로 이동하시면 다음과 같은 화면이 나오네요.

여기서 자신의 OS에 맞는 버젼을 받으시면 됩니다.

대부분 윈도우7을 사용하고 계실테니 윈도우7의 32와 64비트만 표시 했습니다.


 



참고로 OS 버젼을 알려면

단축키 "윈도우키 + Pause Break" 키를 누르면 아래 화면이 나오는데, 여기서 확인하시면 됩니다.

 





이제 다운 받은 파일을 설치하도록 하겠습니다.

 



순서는 사진 순서대로 체크해둔 것을 알아두시고 진행 하시면 됩니다.

 

 

 


이게 완료가 되면 다음창이 뜨네요.

계속 진행 하시면 됩니다.


 

 

 



계속하기를 누르면 아래와 같은 화면이 나오는데요.

여기서 부터는 설치할 필요가 없어서 설치 취소를 하시면 됩니다.

 

 






[Java 인식이 잘 되었는지 확인하기]


실행창에서 "cmd"를 입력 후 cmd를 선택합니다.

그리고 cmd 창에서 "java" 를 입력해서 다음과 같이 나오거나


 

 



역시 cmd 에서 "java -version" 이라고 입력했을때 버젼 정보가 나오면 제대로 설정이 완료 된거네요.

 

 






[Android SDK 다운로드 및 설치]

Android SDK 설치는 위의 순서대로 진행하였는데, JAVA가 인식되지 않으면 하도록 합니다.


JAVA가 인식이 잘 되면 Apk Manager 이용해서 작업하기로 넘어가도록 하세요!


 


(↑ 클릭)


위 링크에 들어가시면 아래 같은 화면인데요.

빨간색 체크 해둔 압축파일 Ver. 으로 다운 받으세요.


 



자 다운받은 파일입니다.

 



이제 압축을 풀면

경로가 android-sdk_r17-windows → android-sdk-windows 속에

다음 파일 들이 있네요.


 



설치전에 폴더를 간소화 시킵니다.

폴더명이야 자신이 원하는 이름으로 변경합니다. (저는 android sdk 라고 만들었네요.)

그러면 android sdk 의 폴던 안에 위 사진의 파일들이 있게 됩니다.


자 이제 경로를 간소화 시킨 파일을 옮겨 두도록 하겠습니다.

그냥 옮기지 않고 해도 되는데요. 앞으로 Apk Manager를 사용할 것이니 이동해두는게 편합니다.

(아 그리고 폴더 자체를 이동하는 이유는 설치 파일이 이 폴더안에 설치 되기 때문이네요.)



저는 이 폴더를 다음 경로로 옮겨 놨네요.

"C:\Program Files\android sdk"


 





자 이제 SDK를 설치 하도록 하겠습니다.

SDK Manager를 클릭하도록 합니다.

 



그러면 아래 창과 같이 조금 로딩의 시간이 걸린 후에

 



아래 창이 뜨네요.

여기서 체크해둔 맨위에 Tools 의 2가지만 체크 후 우측하단에 Install을 눌러 줍니다.


 



그러면 아래와 같은 화면이 뜨네요.

제 기억으로는 맨처음 설치 할때는 Android SDK Tools 가 설치가 안되어 있어서 Packages에 2가지 설치 목록이 있었고

2가지 설치하기 위해서 Accept All 로 설치 한걸로 기억되네요.


 



아무튼 인스톨 후에는 다음과 같이 표시가 됩니다.

 



그리고 폴더내에서는 몇개가 추가가 되네요.

 



여기까지만 설치하고도 Apk manager 로 Apk 디컴파일과 컴파일 하기가 잘 되는 분들도 있는거 같은데요.

저는 안 되었네요,,,지독하게 안 되었어요,,,,그래서 다음으로 환경변수 추가하기로 넘어갑니다.





[환경 변수 설정 추가 하기]


환경 변수를 추가하는 이유는 Java를 설치를 했음에도 불구하고

윈도우에서 인식을 하지 못하여 그것을 인식하기 위해서 해주는 작업이네요.



일단 단축키 "윈도우키 + Pause Break" 누르거나

내컴퓨터 - 마우스 오른쪽 클릭 - 속성을 들어가시면

 



다음과 같은 화면이 나오게 됩니다.

여기서 왼쪽 상단에 "고급 시스템 설정" 을 클릭합니다.

 



그러면 다음 화면이 나오고 여기서 "환경 변수"로 들어갑니다.

 



자 이제 아래 화면이 나옵니다.

 



여기서 시스템 변수에서 새로 만들기를 누르도록 합니다.

 



그 후 다음과 같이 입력 후 하는데요.

변수값은 Java가 설치된 경로를 입력하시면 됩니다.

제가 Java Platform (JDK) 설치 할때 경로를 알아두라고 했는데요. 바로 그 경로네요.

하지만 꼭 위에서 알아두지 않아도

기본으로 경로가 C:\Program Files\Java 이고 여기서

버젼에 때라 \jdk(버전명) 이 되네요.


↓ 다운받아 쓰세요.

JAVA_HOME.txt


 

 



자 다음으로는 역시 시스템 변수에서 하는데요.

항목을 쪽 내리다가 보면 "PATH" 라는게 있습니다.

이미 "PATH" 에는 기존에 설정되어 있는 변수가 있네요.

여기서는 PATH를 선택후 "편집" 을 선택합니다.

 



그러면 변수를 편집하는 창이 뜨네요.


↓ 다운받아 쓰세요.

PATH.txt


 

 


일단 알아 둘것은 기존의 입렵된 [A] 라고 해둡니다.

그리고 여기서 추가로 입력해야 될 것들이 있습니다.

바로 아래의 것들입니다.

%JAVA_HOME%\bin;C:\Program Files\android sdk\platform-tools;

위 변수 값은 크게 2가지 정보가 있는데요.

하나는 %JAVA_HOME%\bin 변수값과

다른 하나는 C:\Program Files\android sdk\platform-tools 변수값이네요.

C:\Program Files\android sdk\platform-tools

위 변수값은 바로 Android SDK 를 옮겨둔 경로와 함께

Android SDK 를 설치하면서 생긴 platform-tools 까지의 경로의 변수 값 입니다.


또 알아 두어야 할 것은 각각의 변수 값이나 함께 인식되기 위해서 변수값의 경계에 (;) 표시가 있네요.


아무튼 기존의 입련된 변수값 [A] 앞에 이걸 추가합니다.

그러면 %JAVA_HOME%\bin;C:\Program Files\android sdk\platform-tools;[A]

이렇게 되네요.

 



자 저는 여기까지만 입력을 하고 성공을 했습니다.




만약 여기까지 해도 안되는 분들은 추가적으로

시스템 변수에서 새로만들기를 통해서 다음과 같이 입력하세요.

 



그런데 저처럼 이미 "CLASSPATH" 에 이미 변수값이 존재 할 경우도 있네요.

 


이 경우 새로 만들기를 한다고 해도 새로운 "CLASSPATH" 가 생기는게 아니라

기존의 "CLASSPATH" 에 변수가 ".;" 가 덮어쓰기로 된다는 것을 유의하세요.






[Apk Manager 이용해서 작업하기]


자 이제 드디어 Apk Manager 를 통한 작업을 합니다.

먼저 Apk Manager 를 다운 받으세요.


↓↓↓ 다운받기 ↓↓↓

Apk_Manager_5.0.2.egg

 



이제 실행을 하는데요.

만약 아래와 같은 화면이 나오면 안됩니다.

 


 




◆ Apk Manager 에 대한 기본 알기


Apk Manager 에 들어가면 여러 폴더들이 있는데요.


 


위 체크 해둔 "place-apk-here-for-modding" 에 수정할 Apk 파일을 넣어 두도록 합니다.

(이때 Apk 파일이름이 한글이거나 띄어쓰기가 있으면 안됩니다.)

그리고 하단에 "Script" 을 실행합니다.


실행을 하면 다음과 같은 화면이 뜨네요.

여기서 우리가 할 작업들을 표시해 두었습니다.


 



아 그리고 디컴파일링+컴파일링+사인 작업시 실행한 "Script" 종료하지 않은 상태에서 하시기 바랍니다.

이유는 컴파일링 할때 알려드리겠습니다.





◆ Apk 디컴파일링 하기


다음 화면에서 "22" 를 입력 후 엔터를 누릅니다.

 


그 후 다음 화면이 나오는데요.

상단에 - 1 - test.apk 라고 나옵니다.


만약 "place-apk-here-for-modding" 에 수정할 Apk 를 여러가 넣어 두었다면

숫자가 1, 2, 3, 순으로 나오네요.


일단 전 1개 밖에 없으니 "1" 을 선택합니다.

 


그러면 초기 화면으로 돌아오는데요

여기서 "9" 를 입력하여 디컴파일링을 시작합니다.

 

 


완료 후에는 역시 초기 화면으로 돌아가네요.

("Script" 실행창은 종료 하지 마시고 그대로 둡니다)


자 이제 Apk Manager 폴더로 돌아와서

"projects" 폴더를 들어가면 Apk 가 다음과 같이 디컴파일링 되어 있습니다.

 

 


그리고 원하는 곳을 수정을 하도록 합니다.





◆ Apk 컴파일링 하기


Apk 수정이 완료가 되었다면 이제 다시 "Script" 실행창으로 옵니다.

컴파일링을 하기전에 "20" 을 입력하여 메모리 값을 설정해 줍니다.

저는 메모리 값을 "512" 라고 해주네요.

(위에서 "Script" 실행창을 계속 켜두라는 이유는 Script를 종료하면

설정한 메모리 값을 또 다시 설정해줘야 되기 때문이네요...결론은 귀찮음을 덜기 위함입니다....) 


 


그리고는 뜨는 문구에서 "512" 를 입력해줍니다.

 



그 후 다시 초기 화면으로 돌아오네요.

이제 컴파일링을 위해서 "11" 을 입력합니다.

 

 


조금 있으면 시스템 Apk 냐고 물어봅니다.

여기서 'N" 을 써주도록 합니다.

(시스템 Apk 일 경우는 "Y"선택해야 합니다.)

 



이제 Apk Manager 폴더로 돌아와서

"place-apk-here-for-modding" 폴더를 보면

기존 Apk 파일 이름 앞에 "unsigned" 이 붙은 파일이 생겨 있습니다.

 

 



여기까지 컴파일링을 마쳤습니다.

하지만 끝이 아니니 "Script" 실행창을 종료 하지 마세요.





◆ Apk 사인 하기


Apk 를 수정후 컴파일링을 했다고 끝이 아니네요.

사인을 해야지만 어플이 폰에서 제대로 설치가 됩니다.

일단 컴파일링과 이어지는 작업이지만 설명상 분리해 놨습니다.


컴파일링이 완료되면 역시 초기 화면으로 이동합니다.

여기서 "12" 를 입력합니다.


 

 


사인 작업이 끝나고

마지막으로 Apk Manager 폴더로 돌아와서

"place-apk-here-for-modding" 폴더를 보면

컴파일링 작업으로 "unsigned" 이 붙은 파일이 "signed" 으로 바뀌어 있습니다.


이제 이 어플을 폰에 넣고 설치 하면 끝이네요.




이상으로 제가 성공한 방법입니다.

만약 이대로 했는데 안된다고 하시면...

어떻게 더이상 제가 도움을 주지 못할꺼 같습니다.

저도 해박한 지식을 가지고 한 작업이 아니기 때문이네요...

반응형

댓글