본문 바로가기
카테고리 없음

apk-manager v6.7 을 이용한 SystemUI.apk 수정 방법

by 지낭쓰 2023. 5. 20.

apk-manager v6.7 을 이용한 SystemUI.apk 수정 방법

 

새롭게 출시된 Android 5.1.1 의 Samsung Note 5 펌웨어를 기준으로 해보겠습니다. 

안드로이드 5.0 이상 삼성 단말기를 예시입니다.

 

 

단말기의 /system 폴더가 우리가 말하는 펌웨어가 차지하고 있는 위치입니다.

루팅한 상태에서 수퍼유저 권한이 없이는 수정이 불가능한 영억이겠죠.

 

 

단말기에서 /system/priv-app/SystemUI 폴더에서 SystemUI.apk

그리고 /system/priv-app/SystemUI/arm64 폴더에서 SystemUI.odex (arm64)

 

apk-manager v6.7 에서는 arm64 외에도 다른 구조 OAT 파일도 지원합니다.

 

SystemUI.odex 파일은 OAT 파일이므로 예전의 DEX 구조로 변경하여

DEODEX 인 하나의 apk 파일로로 변경해야 합니다.

 

위 화면처럼 2개의 파일을 apk-manager v6.7 의 place-odex-here-to-deodex 폴더로 복사합니다.

 

 

이제 apk-manager v6.7 을 실행해서 45번 메뉴를 실행하시면 DEODEX 된

단일 SystemUI.apk 파일 1개만 남으로 성공적으로 잘 된겁니다.

 

새롭게 생성된 1개의 단일 파일인 SystemUI.apk 파일을 apk-manager 의

place-apk-here-for-modding 폴더로 이동 또는 복사합니다.

 

디컴파일을 하시기 전에 먼저 SystemUI.apk 파일은 시스템의 리소스를 참조하므로 프레임워크 리소스 파일을 해당 펌웨어와 같은 것으로 apk-manager 에 설치가 되어 있어야 문제없이 디컴파일과 컴파일이 정상적으로 이루어질 수 있습니다.

 

잠깐 프레임워크 리소스를 설치해 볼까요?

 

펌웨어의 /system/framework 폴더에서 다음과 같은 파일을 place-res-apk-here-to-install 폴더에 넣습니다.

 

framework-res.apk

twframework-res.apk

 

 

단말기 회사마다 ****-res.apk 이름은 다를 수 있습니다.

전 여러가지를 넣어 사용하는 관계로 앞에 접두사 이름을 넣어 복사해 두었습니다.

66번 메뉴를 실행해서 2개의 프레임워크 리소스 파일을 설치합니다.

2가지 이니 66번 메뉴를 2번 실행해서 각각 설치하시면 됩니다.

사실 SystemUI.apk 는 1번 프레임워크 리소스만 참조하므로 첫번째 것만 설치하셔도 무방합니다.

 

프레임워크 리소스 설치를 마쳤으면 이전에 복사한 SystemUI.apk 를 디컴파일 합니다.

디컴파일은 apk-manager 의 9번 메뉴를 이용합니다.

 

 

그전에 22번 메뉴 실행해서 디컴파일할 대상을 선택합니다.

 

 

프로젝트를 선택하면 apk-manager 상단에 선택된 앱이 표시됩니다.

 

프로젝트 선택을 마쳤으면 9번 메뉴를 선택해 디컴파일합니다.

 

특별한 오류 메세지 없이 진행되시면 정상적으로 디컴파일이 이루어 진겁니다.

 

 

그럼 소스나 이미지 등을 수정하시고 컴파일을 하면 됩니다.

 

선택된 프로젝트의 컴파일은 11번 컴파일 메뉴를 이용합니다.

 

 

펌웨어의 시스템 파일은 개별적인 서명키를 가지고 있지 않고

시스템을 사용하기 때문에 컴파일시 개별 어플리케이션 처럼 서명키 보관 부분이 없습니다.

그래서 해당 부분은 포함되지 않습니다.

 

SystemUI.apk 는  컴파일시 위 화면에서 처럼 시스템 apk 여부를 묻는다면

꼭 "y" 를 선택해야 합니다. 그래야 서명 파트 부분이 제외된 부분만 빌드합니다. 

일부 모르시는 분들이 무조건 서명해야 하는 것으로 착각하고 계신 분들이 있습니다.

 

 

컴파일하고 빌드된 폴더를 보면 unsignedSystemUI.apk 파일이 생성되어 있습니다.

다시 말하지만 시스템  파일은 서명 파트를

포함하고 있지 않으므로 이 서명이 되지 않은 파일을 이용하시면 됩니다.

 

이제 마지막 작업만 남았습니다.

 

apk-manager에서 5번 메뉴를 한번 실행하셔서 ZIP 정렬 한번 해줍니다.

안하셔도 작동은 하지만 그래도 꼭 안정적인 작동을 위해 꼭 해주시기 바랍니다.

unsignedSystemUI.apk 파일을 정렬하여 최적화믈 마치면 동일으로 해당 폴더에 생성이 됩니다.

 

그리고 시스템 파일은 서명 과정이 생략된다는 사실 잊지마시기 바랍니다.

unsignedSystemUI.apk 을 사용하여 적용하시면 됩니다.

 

노트5 펌웨어 안드로이드 5.1.1 버전 테스트 결과 이상없이 되네요.

 

 

삼성전자의 마케팅의 최대 실수는 초창기 배터리 분리를 장점으로 광고하면서 아이폰을 비난하던 모습은 어느덧 사라지고 이젠 배터리 일체형 아이폰화 되어가고 S6은 그렇다 쳐도 노트5 마져 그 기대를 저버리게 만들군요.

 

또한 적외선IR도 없고, 특히 SD확장슬롯 없는 것은 그야말로 충격이군요. 새로운 기능이 있으니 기존의 기능은 좀 버려도 포용된다는 사고 방식.. 그렇다고 대처할 수 있는 것이 있는것도 아니면서 크게 혁신적이지도 않으면서 기존 사용자가 누리던 권리를 포기하라는 식의 마케팅은 이미 실패한 마케팅이라고 봅니다. 지금까지 삼성 폰의 혁신적인 기술보다는 이런게 있는것 자체가 장점이였는데.. 판매 부진은 당연한 결과입니다.

 

아차 그리고 삼성페이 보급을 위한다는 명목이겠지만 바탕화면 아래 하단 매번 노출되어 있는 비상식적인 어플은 끌 수 있는 옵션을 넣던가 심지어 락화면을 제거하지 않은 상태에도 사용이되는 최대의 권리를 누리는 삼성페이 앱! 하단 누를때 마다 걸리적 거립니다.