본문 바로가기

Smart Phone/Android

1.테마강좌 - APK파일 Decompile <Apk Manager>

준비물

Apk Manager     http://forum.xda-developers.com/showthread.php?t=695701

7-zip(압축프로그램 Winrar와 둘중택1) http://www.7-zip.org/

JDK    http://www.oracle.com/technetwork/java/javase/downloads/index.html

SDK   http://dl.google.com/android/android-sdk_r10-windows.zip


이 모든 준비물이 분해하는데만 쓰이는것은 아닙니다.

처음부터 준비가 잘 되어 있어야 작업하기 편하실듯 하네요.

다운받으시면서 먼저 간단히 글을 읽어나가 보세요.


가장먼저 수정하고 싶은 apk파일을 꺼내듭니다.

이렇게 말씀드리면 좀 막연하겠지만...

대부분 상단바+@에 해당하는 부분이 framework-res.apk입니다.

락스크린과 하단바, 그리고 전체적인 UI가 해당하는것은 com.htc.resources.apk 입니다.

그런데 이 com.htc.resources.apk는 프로요 센스에만 해당이 되구요..

진저브레드 같은 경우에는 조금 다르게 나오는것으로 알고있습니다.

그리고 대표적으로 상단바(Taskbar)의 시계나 다른 부분의 service.jar가 있습니다.

이 Service.jar의 경우에는 다른방법을 쓰게되어 차후 천천히 설명드리겠습니다.

이 3가지의 경로는 /system/framework/ 내에 위치해있습니다.

테마를 만들때 가장 손을 많이 쓰는곳이 앞서 말한 framework-res.apk와 com.htc.resources.apk를 많이 수정하게 될겁니다.

이 두가지만 수정을 잘해도 아주 깔끔하게 나오죠..

물론........ com.htc.resources.apk는 최소 1290개의 파일을 수정해야 될지도 모르지만요 -_-;;;


다음으로 많은 위젯들과 기타 아이콘 같은 부분을 수정해야 되는 경우가 있습니다.

하단바와 그 아이콘이 들어있는 Rosie.apk가 있구요.

요즘 제가 작업하던 테마를 보면 아시는분은 아실테지만

기기를 PC와 연결했을때 뜨는 디버깅아이콘만 까맣게 나옵니다.

그 부분은 PCSCII.apk를 수정해주시면 됩니다. (다만 잘못 건들일 경우 Storage mode는 사용이 불가능해집니다.;;)

그 외에 다른부분은 알아보기 편하게 파일명이 구분되어져 있습니다.

이 파일들은 /system/app/ 폴더 내에 구성되어 있습니다.


너무 글들만 적혀있네요..

원하시는 apk를 구하실때는 Root explorer로 핸드폰 내부를 뒤져 apk파일을 SD Card로 복사후에 Storage연결해서

빼오는 방법도 있구요. 자신이 설치하셨던 롬을 압축 분해하셔서 빼오는 방법도 있습니다.


준비된 파일이 구비가 되었고 모든 프로그램 설치가 되고 Apk Manager를 다 다운받으셨으면

Apk Manager를 항상 접근하기 쉬운 위치에 둡니다.

폴더를 열어보시면 많은 폴더들이 구성되어있습니다.


구하신 apk를 place-apk-here-for-modding에 넣어줍니다.

사실 저는 다른 메뉴는 쓸 일이 없네요..

그리고 Script.bat을 더블클릭으로 실행을 시켜줍니다.

그럼 아래와 같은 cmd창이 뜹니다.


제일먼저 숫자 20을 타이핑후 엔터를 쳐서 Max Memory size를 변경해줍니다.

저는 512MB를 설정합니다.

22번 Set current project를 선택하면 modding폴더에 들어간 apk파일들이 보여집니다.

원하는 apk를 선택하여 엔터를 치면 우측 상단에 None으로 된 부분이 apk파일명으로 보여집니다.

그 이후 9번을 선택하여 Decompile해줍니다.

그리고 폴더로 돌아와 project폴더를 구경해줍니다.

 

저는 com.htc.resources.apk를 Decompile했고 폴더 구성은 이렇게 복잡하게 나옵니다.

주로 테마를 꾸미게 될 경우 ****.apk/res/drawable-hdpi를 많이 수정하게 됩니다.

주의하실점은 원본 apk를 7-zip으로 열어봤을때(풀기가 아닙니다.) -v4가 붙어 있는게 있고 없는게 있습니다.

그러나 Decompile시에는 -v4는 무시되고 풀립니다. 원본을 확인하고 -v4가 붙어있는 경우 project의 hdpi라고 쓰여진 부분 맨뒷자리에

-v4를 직접 써주셔야 합니다.

이렇게 대부분 drawable-hdpi를 수정하게 될것이고 그 외에 간혹 drawable과 drawable-port-hdpi를 수정하게 됩니다.

그리고 xml의 경우 layout과 values쪽을 많이 보게 되실겁니다.

제가 이 파일은 이거다! 라는것을 가르쳐드리지 않는 이유는 설명이 힘들기도 할뿐더러

직접 하나하나 보시고 설정을 해보시면서 작업을 하시다보면 추후에는 해당 파일을 찾으러 돌아다니지 않더라도 원하는 곳에 딱 들어가게 됩니다.


그림파일을 수정시에는 최대한 그 규격을 맞춰주는것이 가장좋다고 생각됩니다.

저의 경우에는 파일을 가져다 일러스트에서 깔끔하게 만들어준후에 포토샵에서 열어 저장을 하곤 합니다.

이렇게 일러스트에서 작업하고 색이나 크기를 언제든 조정할수 있도로 같이 저장해두기도 합니다.

 

이제 이 부분에 대해서는 더 설명을 드리진 않겠습니다.

글만 점점 복잡해지게 길어지네요.

이후의 강좌는 9.png라는 부분을 수정하는 방법을 가르쳐 드리겠습니다.

9.png의 경우 일반 png들과는 다른 습성을 갖고 있어서 일반적인 수정방법으로는 되지 않습니다.

먼저 .PNG파일들을 수정하시고 이후 9.PNG들을 정리해서 수정하시면 좋을것 같습니다.