본문 바로가기

☆ 테마제작관련 ☆/테마제작강좌

Odex [Deodex] 강좌 #2 [부제 : dex화일 추출]


[Odex Deodex 강좌 #3] dex화일 수정 및 적용

[Odex Deodex 강좌 #1] 오덱스 & 디오덱스란?




Odex & Deodex 강좌 #2


어렵게만 생각하시는 Odex & Deodex 실습을 통해 배워봐요^^

p.s 지정된 파일을 찾을 수 없다고 나오시는 분 압축프로그램을 7zip으로 바꿔서 해보세요 (쿤투님 경험입니다.^^)




테마제작 하시면서 Odex라는 단어만 덮어버리시는 테마사님들에게

조금이나마 도움이 되고자 강좌를 진행하게 되었습니다.




Odex & Deodex 처음들어 보시면 이전 강좌부터 봐주세요

[Odex Deodex 강좌 1] 오덱스 & 디오덱스란?






Odex & Deodex 작업은 절대 어려운거 없습니다.

저흰 프로그램을 짜는게 아니고 

이미 오픈된 소스를 자신의 통신사 / 기종에 맞게 수정만 해주시면 됩니다.

사실 Apk manager 다루는 방법보다 쉬울 수 도 있습니다.





다만 Apk manager 보다는 핸드폰 / PC세팅이 먼저 이루어져야 하는데

이 부분에 대한 체계적인 강좌가 없어서 어려워하시는것 뿐입니다.



우선 자신이 Odex작업을 할 수 있는 준비가 되어있는지 확인해 볼까요??

아래 6가지를 먼저 준비 / 세팅 해주세요




-----------------------------------------------------------------------------------

1

 우선~~ 루팅이 되어있습니까?

안되어 있다면 아래 강좌 보시고 루팅부터 해주세요

[tegrak kernel #2] 테그라크를 이용한 루팅 / 언루팅




-----------------------------------------------------------------------------------

2

 그리고~~ Java가 PC에 설치 되어 있습니까?

안되어 있다면 아래 강좌 보시고 자바부터 해주세요

[자바설치] JAVA 설치를 통한 테마제작 환경 구축하기



-----------------------------------------------------------------------------------

3

 휴대폰에 BusyBox가 설치 되어있어 있습니까?

안되어 있다면 아래 강좌 보시고 자바부터 해주세요

[BusyBox] 비지박스 설치 / 비지박스 사용법



-----------------------------------------------------------------------------------

4


 휴대폰에 USB 디버깅 체크가 되어있나요?

시스템설정==>개발자옵션==>USB 디버깅 체크





-----------------------------------------------------------------------------------

5

 Odex Deodex할 수 있는 

AutoDEOToolADB툴을 다운로드 받아 주세요



AutoDEOTool1.0.3_softdx_fix.7z



7.zip 압축화일 풀기방법은 아시죠?? 모르시면 아래 링크 참조

7zip(7-zip) 사용법 (분할압축 해제 방법)




-----------------------------------------------------------------------------------

6


 마지막으로 자신이 사용하고 있는 펌웨에서 추출한

 Framework폴더 전체와 App폴더 내(필요한 화일만) 준비해 주세요


없으시면 따로 구하셔도 되고.. 아니면 순정펌에서 추출하셔도 됩니다.

삼성 갤럭시 시리즈 kies를 통한 펌웨어 추출 방법

펌웨어에서 순정어플 추출 하기 [framework/app폴더 등]





-----------------------------------------------------------------------------------


"다만 Apk manager 보다는 핸드폰 / PC세팅이 먼저 이루어져야 하는데"


라는 부분이 이런 부분입니다.

-----------------------------------------------------------------------------------




Apk Manager에 비해 준비해둬야 할게 너무 많죠??

그래도 한번만 준비해 두시면 다음 부터는 순정펌만 있으면

신속하게 작업이 가능합니다.


처음 한번 하는게 어렵지 한번만 해보면 

너무 쉬운 작업 들입니다.


못믿으시겠죠??

앞으로 스샷대로 하나하나 따라하시다 보면

Odex Deodex 별거 아니네~~라고 말하실거예요^^






다만 소스가 오픈되어 있어서 간단한 수정 만 할 경우를 말하는겁니다.

자신이 전혀 다른기종의 Odex를 놓고 자기 기종과 비교 대조하면서

포팅하는 수준을 말씀드린 건 아닙니다.




그럼 모든 준비가 되었다면 시작해 볼까요?

(가장 간단한 ICS Lock화면 만들기 강좌를 예를 들어 설명해 드릴께요)







첫번째 단계 

 Odex(Jar)를 autoDEOTool로 Deodex하기 

(아래 도표 Dex추출 전 까지)







1) 5번에 첨부 되어진 압축 화일을 압축해제 해서 드라이브 최상이 폴더에 풀어 주세요 

(친절하게 아래 링크 다시 달았습니다.)



AutoDEOTool1.0.3_softdx_fix.7z







아래 스샷과 같은 화일들이 보이실 겁니다.

작업의 편의를 위해 웃음투자님의 autodeotoolADB를 합쳐 놓은 겁니다.

http://blog.naver.com/softdx/60158878801(Autodeotool 출처 웃음투자님)








2) 순정펌에서 추출한 Framework폴더 화일 전체를 _framework 폴더 안에 넣어주세요 (아래 순서대로^^)



순정펌웨어 framework 폴더에서









순정 펌웨어 framework 폴더안파일 전체를 복사해서




AutoDEOTool 폴더안 _framework폴더안에 붙어넣어 주세요




3) 폴더안에 있는 AutoDEOToolMain.bat 를 더블클릭해서 프로그램을 실행 시켜 주세요





AutoDEOToolMain.bat 초기 실행 화면 입니다.


AutoDEOToolMain.bat 초기 실행 화면 입니다.


이번 강좌에서는 ICS Lock화면 만들기 강좌에 필요한 화일이 jar화일이기때문에 framwork폴더만 넣었습니다.

app폴더안에 apk+odex관련 수정을 위해서는 _app폴더안에 필요한 화일을 넣어야겠지요.


위에 명령어 중에 꼭 알아야할 명령어는 1번/3번/5번 입니다.




1.DEODEX ALL (Stock Rom)

_framework, _app 폴더안에 모든 화일을 Deodex화 합니다.


3.DEODEX APKs (Stock Rom)

_app폴더안에 apk와odex를 조합하여 deodex합니다.


5.DEODEX JARs (Stock Rom)

_framework 폴더내의 jar+odex를 조합하여 deodex합니다.




오늘 순정락을 ICS락으로 바꾸기 위해서는 framework 폴더안에 android.policy.jar  이 필요 하므로 

키보드 자판 5번을 눌러주신 후에 엔터를 쳐주세요



아래 스샷과 같이 Deodex 되는 과정을 보실 수 있습니다.





 deodex가 완료되면 다시 AutoDEOToolMain.bat 초기 실행 화면으로 돌아옵니다.



그럼 deodex가 잘 되었는지 확인해 볼까요?

폴더내에 deodexed_JAR 폴더 안을 확인해 보세요




저희가 사용 할 android.policy.jar 이 잘 Deodex되었네요

버젼별로 안되는 화일들이 있습니다. 안되는 화일 deodex하는 방법은 이 다음강좌에서 따로 다루도록 할께요





지금까지 한 작업을 아래 다이어그램을 보면 사각박스안에 과정이였습니다.

원본 Deodex 과정까지 오셨네요^^








지금부터는 아래 다이어그램 사각부분 dex화일을 추출 / 수정 / 다시 수정된 dex화일 생성까지 설명해 드릴께요








두번째 단계 Dex 추출 및 수정



추출된 android.policy.jar화일을 AutoDEOTool폴더로 복사해 주세요




아래 스샷의 android.policy.jar화일 경로 확인해 주세요 




android.policy.jar 선택 후 우클릭을 해서 열기를 해주세요



android.policy.jar를 열어보시면  classes.dex화일이 있습니다.

바로 저희가 말하는 dex화일 추출의 대상이 되는 dex 입니다.

(deodex되기 전 에는 저 dex라는 화일이 존재하지 않습니다. )



classes.dex화일을 Drag & Drop으로 AutoDEOTool폴더로 꺼내 놓으세요





아래 스샷 경로에 classes.dex화일있는 걸 확인해 주세요



휴~~~ 이제서야 dex추출이 완료 되었습니다.


이제 Odex 작업의 반은 끝난겁니다.






이젠 dex화일을 수정하고 적용 만 하면 됩니다.








오늘 강좌는 여기까지 하고 다음 Odex [Deodex] 강좌 #3에서 

dex화일 수정하고 스마트폰 적용하는 과정을 설명해 드릴께요








이상으로 Odex [Deodex] 강좌 #2를 마치도록 하겠습니다.