광고

1편의 글을 잘 따라오셨다면
이제 디컴파일을 위한 환경이 갖추어져 있군요.
오늘은 예제로서 SystemUI.apk를
디컴파일 및 컴파일하도록 하겠습니다.

1. Decompile

우선 추출해둔 SystemUI.apk 파일을 복사해서
apk manager 폴더 내의



이런 폴더안에 붙여넣습니다.

저의 경우는 나중의 귀찮음을 피하기위해
SystemUI.apk
framework-res.apk
twframework-res.apk
파일들을 몽땅 집어넣었습니다.

다시 apk manager 폴더로 나오셔서
Script.bat 파일을 실행합니다.

cmd가 나타나면



이와 같이 숫자키로 22를 입력하고 엔터를 누릅니다.

그러면



이런 화면이 나타나는데,
위의 apk 목록은 modding폴더 내의 내용물 목록입니다.

디컴파일하려는 apk파일 앞에 붙어있는 번호를 입력해
파일을 선택합니다.

지금 우리는 SystemUI를 디컴파일하려하므로
2를 입력하고 엔터를 누릅니다.

이제 스크립트 상단에



이와같이 SystemUI.apk가 선택되었음이 나타납니다.

이제 디컴파일을 해봅시다.



위 사진과 같이 9를 입력하고 기다립니다.

로딩이 끝나면 cmd를 최소화하고
(끄면 안됩니다)
apk manager 폴더 내의



프로젝트 폴더로 들어가면



이와같이 SystemUI.apk가 디컴파일 되어있습니다.
(컴파일을 할때까지 cmd는 종료하면 안됩니다!)

2. Compile

수정할 것을 수정했다 치고
이제 컴파일을 해봅시다.

cmd를 열어



이와 같이 11을 입력하고 엔터를 누릅니다.

Building apk...
올ㅋ
하고 기대하고 있으면...
fxxx!!!!

'컴파일안됨ㅋ 오류로그 보셈ㅋ'

따위의 문구가뜹니다....ㅡㅡ

저도 이부분에서 정말 당황했는데요...
자바를 다시 깔고 소스파일을 다시 올리고
별짓을 다해도 안되더군요.

이제 이 오류를 해결해봅시다.

네이버 검색으로
notepad++ 를 검색해 설치해줍니다.
(notepad++는 xml수정에도 메모장따위보다
137배 정도는 월등하기때문에 앞으로의 글은
notepad++를 기준으로 쓴다는것을 미리 알려드립니다)

프로젝트 폴더-SystemUI.apk 폴더- res폴더-
layout폴더로 들어가 줍니다.

system_bar_notification_panel_title.xml

을 찾아서 오른쪽 클릭-notepad++로 열기를 선택합니다.

찾기버튼을 눌러

style="@style/SystemBarNotificationText"

을 찾아서 모두 지워줍니다.
모두지우셨다면 저장하고
다시 layout폴더에서

system_bar_settings_view.xml

을 찾아 마찬가지로 노트패드로 열어줍니다.

다시 찾기버튼을 누르고

style="@style/SystemBarPanelSettingsRow"

style="@style/SyatemBarPanelSettingsIcon"

style="@style/SystemBarPanelSettingsContents"

style="@style/SystemBarPanelSettingsPanelSeparator"

네 종류의 구문을 모두 찾아 지워줍니다.
마찬가지로 저장하시고
노트 패드를 종료합니다.

cmd를 다시 엽니다.
다시 11을 입력하고 엔터를 누릅니다.

Building apk...
문구가 뜨고 시스템 어플이냐 묻는 문구가 뜨는데
n이라고 입력하고
(SystemUI가 시스템어플이라해서
y를 하시면 절대 안됩니다!)
엔터를 누릅니다.

성공!
이로서 컴파일이 완료되었습니다.

modding 폴더로 들어가 보면
unsignedSystemUI.apk
라는 파일이 있습니다.

그 파일을 알집으로 열어주시고
(압축해제가 아닙니다. 그냥 열기만하세요!)
원래있던 SystemUI.apk 도 알집으로 열어주세요.

(정말 중요한 부분이므로 한줄씩 띄워서 설명하겠습니다)
이제 수정한 이미지파일이나 xml 파일을

unsignedSystemUI.apk 내 에서

SystemUI.apk 의 같은 이름의 파일 위로

드래그 & 드롭으로 덮어쓰기 하시면 됩니다.

혹시 value 폴더내 파일을 수정하셨다면
value폴더가 없어서 당황스러우실텐데요,
그럴땐

unsignedSystemUI.apk 최상단에 있는

resource.arsc 파일을

SystemUI.apk 의 resource.arsc파일에다가

덮어쓰시면됩니다.

수정한 모든 파일을 덮어쓰셨다면
알집을 종료합니다.

참고로 말씀드리자면 아까 layout 폴더에서
style구문을 삭제한 두개의 xml파일은
절대로 옮기시면 안됩니다.
즉, 그 두개의 파일은 수정할 수 없습니다.

광고