GIF를 Android Navbar 홈 키로 사용하는 방법

Android 커뮤니티의 일부 훌륭한 사람들은 애니메이션 .gif를 홈 키로 사용하도록 탐색 표시 줄을 수정하는 방법을 알아 냈으며 Appuals는이를 수행하기위한 가이드를 보유하고 있습니다.

경고 : 이 과정은 상당히 복잡합니다. SystemUI.apk를 디 컴파일하고 중요한 파일을 엉망으로 다시 컴파일해야합니다. 문제가 발생할 경우 SystemUI.apk를 백업하십시오!

관련 Appuals 안내서 :

  • Android 시스템 UI를 수동으로 테마하는 방법
  • 안드로이드 APK를 디 컴파일 및 테마하는 방법
  • 스톡 ROM에서 APK를 Deodex하는 방법

요구 사항 :

  • 루팅 된 Android 휴대 전화 (Appals에는 많은 안드로이드 루트 가이드가 있습니다!)
  • APK 디 컴파일 도구 (APK Easy Tool 권장 )
  • 메모장 ++와 같은 좋은 코드 편집기

SystemUI.apk 디 컴파일

가장 먼저해야 할 일은 SystemUI.apk를 deodex하는 것입니다.이를 위해 Tickle My Android와 같은 도구를 사용할 수 있습니다. 이 프로세스에서 APK deodexing에 대한 Appuals 안내서를 읽으십시오.

다음 단계는 SystemUI.apk를 디 컴파일하는 것입니다. 이전에는 해본 적이없는 가이드 자체가 필요합니다. 운 좋게도 Appuals에는 디 컴파일 지침과 함께 "Android 시스템 UI를 수동으로 테마하는 방법"이 있습니다. 전에 APK를 디 컴파일 한 적이 없습니다.

SMALI 파일 추가

이제 새 smali 파일을 추가해야합니다. 여기에서 사용 가능한 작업을 위해 이미 수정 된 .smali 파일 팩이 있습니다. 특히, .zip에서“SelfAnimatingImageView.smali”파일을 추출하여 디렉토리의 디 컴파일 된 APK에 추가해야합니다.

 SystemUI.apk \ smali \ com \ android \ morningstar \ 

이러한 폴더가 없으면 만들어야합니다.

GIF를 프레임으로 나누기

이제 좋아하는 애니메이션 .gif를 찾아 내비게이션 홈 버튼으로 사용하고 싶습니다. Giphy.com/stickers에서 찾을 수있는 것처럼 스티커 gif를 사용해야합니다. PNG와 같이 투명한 배경이 있지만 실제로는 GIF입니다.

원하는 스티커 GIF를 저장 한 후에는 일련의 PNG로 변환해야합니다. 수정 된 SystemUI는 실제로 네이티브 .gif 파일을 실행하지 않고 PNG를 순차적으로 재생하기 때문입니다. 따라서 .gif를 순차적 PNG로 분할해야합니다. 운 좋게도 EZGIF Split과 같은 온라인 변환기를 사용하면이 작업을 매우 쉽게 수행 할 수 있습니다.

GIF를 EZGIF 분할 도구에 업로드하고 분할 옵션 드롭 다운 메뉴에서 "PNG 형식의 이미지 출력"을 선택하면 모든 프레임이 순차적으로 추출됩니다. 그런 다음 ZIP 파일로 프레임을 함께 다운로드 할 수 있습니다.

이제 분할 GIF의 PNG 프레임을 디 컴파일 된 SystemUI apk 폴더의 적절한 " drawable-xxxDPI "폴더에 추가해야합니다. 사용할 폴더는 기기의 DPI에 따라 다릅니다.

  • MDPI = ~ 160 DPI
  • HDPI = ~ 240 DPI
  • XHDPI = ~ 320 DPI
  • XXHDPI = ~ 480 DPI
  • XXXHDPI = ~ 640 DPI

이제 애니메이션에 사용할 이미지와 이미지를 얼마나 빨리 순환하는지 Android에 지시하는 XML 파일이 필요합니다. 이전에 다운로드 한 ZIP으로 돌아가 "frame_anim.xml"을 가져 와서 디 컴파일 된 APK의 "res \ drawable"폴더에 복사하십시오.

Notepad ++에서 frame_anim.xml을 열면 다음과 같아야합니다.

로 시작하는 각 줄

마지막으로 SystemUI.apk를 다시 컴파일하기 전에 애니메이션을 탐색 모음에 배치해야합니다. 레이아웃 XML 파일을 편집 할 것이므로 약간 까다 롭습니다. 대부분의 재고 ROM에서 HOME navbar 소프트 키를 제어하는 ​​코드는“layout \ navigation_bar.xml”에서 찾을 수 있지만“layout \ home.xml”에서도 찾을 수 있습니다. ROM에 따라이를 찾아야합니다.

기본적으로 다음과 같은 코드가 포함 된 레이아웃 XML 파일을 찾고 있습니다.

android : id = "@ id / home_button"android : layout_width = "0.0dip"android : layout_height = "0.0dip"android : scaleType = "center"android : contentDescription = "@ string / accessibility_home" systemui : keyCode = "3" /> 

home_button 또는 이와 유사한 것을 참조하는 행이 표시되면 올바른 XML 파일에 있다는 것을 알 수 있습니다. 우리가해야 할 일은이 HOME 키를 숨기고 같은 크기이지만 보이지 않는 새 키를 그 자리에 놓으면 애니메이션 프레임이 그 아래로 이동하는 것입니다. 이것은 실제로 매우 쉽습니다 . 필요한 것은 FrameLayout 코드 입니다.

이 코드를 살펴보면 서로 다른 세 가지가 쌓여있는 것을 볼 수 있습니다. 그러나 앱이 실행 중일 때는 보이지 않습니다. 홈 키가 탐색 모음에 있어야하는 애니메이션 GIF 만 표시됩니다.

따라서 HOME 소프트 키 코드 행을 위의 FrameLayout 코드로 바꾸면되지만 특정 ROM에 맞게 조정해야 할 수도 있습니다. 여기에 약간의 시행 착오가 필요합니다.

APK 재 컴파일 및 플래싱

이제 수정 된 APK를 다시 컴파일 할 준비가되었습니다. APK Easy Tool을 사용하여 SystemUI.apk를 다시 컴파일하고 장치의 복구 모드에서 플래시하면됩니다. Dalvik 캐시를 지우거나 추가 한 새 smali 파일이 활성화되지 않으므로 복구 모드에서이 작업을 수행하는 것이 중요합니다.

모든 것이 잘되면 애니메이션 GIF를 새로운 탐색 모음 홈 키로 볼 수 있습니다!

재미있는 기사