http://blog.naver.com/PostView.nhn?blogId=chihun85&logNo=130141231043
Apk Manager 안드로이드 APK 디컴파일-컴파일 하기 (5.0.2 버전 - ICS 가능) 네이버 블로그
안드로이드 테마를 꾸밀 때 루팅 후 APK 파일을 수정해야 합니다.
뭐 단순히 테마뿐 아니라 여러 기능의 추가, 삭제를 위해서도 필요한 과정이죠.
이때에 필히 선행되어야 하는것이 디컴파일과 컴파일 입니다.
Compile / Decompile 이란 무엇인가? (컴파일 / 디컴파일 이란?)
먼저 컴파일은 프로그래머가 만든 프로그래밍언어를 컴퓨터가 이해하는 기계어로 바꾸어주는 과정이라면, 디컴파일은 이와 반대로 기계어를 c언어 혹은 기타 프로그래밍언로 바꾸어주는 역과정
여러 스마트폰 들이 ICS 업그레이드 후 Apk Manager 에서 컴파일 / 디컴파일이 잘 되지않는 문제가 생기고 있습니다. 그래서 오늘 준비한 건 - ICS 지원 되는 Apk Manager 5.0.2 입니다.
Apk 매니저를 통해서 컴파일 / 디컴파일 하기!
다운받은 압축 파일을 풀고 폴더를 열어보면 아래처럼 나옵니다.
위 그림에 대한 설명입니다.
- 번에 수정할 apk 확장자 파일을 넣는거에요.
- 번에는 1번 apk 파일이 디컴파일 되며 2번 projects 폴더에 들어갑니다.
- 번은 실행파일 입니다. apk manager 를 실행하기 위한 커맨드죠~
자 이제, Script.bat 실행하시고 아래 그림처럼 22번을 눌러줍니다.
place-apk-here-for-modding 폴더에 든 apk 파일중, 어떤걸로 작업할건지~
프로젝트를 선택해야 하는데, 바로 그 작업입니다.
전 SystemUI.apk 를 place-apk-here-for-modding 폴더에 넣어서
수정하려 했기에 하나만 보이네요.
여러개를 넣었다면 여러개가 보이고 앞에 숫자가 1, 2, 3, 이런식으로 붙는데
원하는 파일을 선택하면 되요. 전 1을 선택합니다.
자 이제 어떤 파일을 수정할지 선택했고, 디컴파일 해서 프로그래밍 언어로 된 내부를
사람이 볼 수 있는 언어로 바꿔줄 차례!
위 처럼 9번, Decompile apk 누릅니다.
조금 시간 지나면~ Decompiling Apk 라고 뜨며 디컴 작업이 진행되는데요..
컴 상태에 따라서 시간이 좀 걸리거나 금세 되거나 다양합니다.
안좋은 PC 사양 이라면 좀 걸리겠죠 ㅎㅎ 보통 3분 안에는 끝날거에요~
완료 되면 Projects 폴더로 들어갑니다. 위 처럼 apk 파일에서 폴더로 디컴파일됬죠.
뭐 각종 수정 작업은 원하는데로 하시면 됩니다 이제.
폴더 내부로 들어가 xml 수정을 하거나 나인패치 이미지도 변경하고~
다 되셨으면 아래처럼 컴파일 시작~
11번을 눌러 컴파일 시작~
위 처럼 Building Apk 나오고.. 좀 시간이 흐른 뒤 완료됩니다.
아참, system apk 라고 물으면 n 눌러서 노우~! 라고 하시면 됩니다.
저건 y 누를 필요가 없는것 같아요. 시스템 폴더 앱 이라도. 시스템 앱 일지라도 y 를 누르면
괜스레 sign apk 가 되어버려 쓸 수 없으니 n 눌러주세요!
이제 다 됬으면 place-apk-here-for-modding 폴더로 들어가면 위 그림처럼 unsignedSystemUI.apk
처럼 unsigned 가 붙고 원본 파일명이 붙는 apk 가 생성됩니다.
요걸 압축 프로그램 으로 열어서 수정한 파일들을 원본 apk 파일을 열어서 덮어씌워 주는거죠.
(이미지야 그냥 덮어 씌우면 되는데 xml 은 resources.arsc 로 통합되므로 resources.arsc 파일을 원본에 덮어씌워 주시면 되겠네요.)
다 됬습니다. 이제 원하는 apk 파일을 이미지만 수정하는 게 아니라 xml 이나 9 patch (나인패치)
된 파일들도 수정할 수 있는 방법을 익혔네요. ;-)
강좌 따라오느라 수고 많으셨어요~
'Mobile Development > Android ' 카테고리의 다른 글
안드로이드 자바 개발환경 및 유용한 개발 툴들 (0) | 2013.04.09 |
---|---|
[Android] - 어플 변조를 방지하기 위해서는? (Apktool) (0) | 2013.03.19 |
Android Apk De compile 하는 방법 (0) | 2013.03.19 |
[안드로이드] framework-res.apk 수정방법(테마수정, 시스템어플수정) (0) | 2013.03.19 |
dex 파일 디컴파일(decompile) (0) | 2013.03.18 |
SAMSUNG DEVELOPER DAY 2012 (0) | 2012.11.14 |
안드로이드 SDK 설치(Android sdk Install) (0) | 2012.11.14 |
안드로이드 자바 개발환경 및 유용한 개발 툴들 (0) | 2012.11.14 |
안드로이드의 발전 과정: 1.0에서 젤리빈(Jelly Bean)까지 (0) | 2012.11.10 |
안드로이드 해킹 툴 ‘Anti’ 공개 (0) | 2012.05.09 |