Cách sử dụng GIF làm Khóa Home Navbar Android của bạn

Một số bộ óc xuất sắc trong cộng đồng Android đã tìm ra cách sửa đổi thanh điều hướng của bạn để sử dụng .gif hoạt hình làm khóa chính của bạn và Appuals có hướng dẫn để làm điều đó!

Cảnh báo: Đây là một quá trình khá liên quan. Bạn cần dịch ngược SystemUI.apk, xử lý một số tệp quan trọng và biên dịch lại cùng nhau. Tạo một bản sao lưu SystemUI.apk của bạn khi có sự cố!

Hướng dẫn ứng dụng liên quan:

  • Cách giao diện thủ công giao diện người dùng hệ thống Android
  • Cách dịch ngược và chủ đề APK Android
  • Làm cách nào để Deodex APK của bạn trên ROM Stock

Yêu cầu:

  • Một điện thoại Android đã được root (Appuals có rất nhiều hướng dẫn root Android!)
  • Công cụ dịch ngược APK ( chúng tôi khuyên dùng Công cụ dễ dàng APK)
  • Một trình soạn thảo mã tốt như Notepad ++

Dịch ngược SystemUI.apk của bạn

Điều đầu tiên bạn cần làm là giải mã SystemUI.apk của bạn - bạn có thể sử dụng một công cụ như Tickle My Android cho việc này. Đọc hướng dẫn ứng dụng để khử các APK trong quá trình này.

Bước tiếp theo là dịch ngược SystemUI.apk, nó yêu cầu một hướng dẫn nếu bạn chưa từng làm điều đó trước đây - may mắn thay, Appuals có Hướng dẫn cách sử dụng giao diện người dùng Android System UI với các hướng dẫn dịch ngược, vì vậy hãy đọc nếu bạn đọc Trước đây chưa bao giờ dịch ngược APK.

Thêm tệp SMALI

Bây giờ bạn cần thêm các tệp smali mới - có một gói các tệp .smali đã được sửa đổi cho chính xác những gì chúng ta cần phải có sẵn TẠI ĐÂY. Cụ thể, bạn cần trích xuất tập tin SelfAnimatingImageView.smali của người dùng từ .zip và thêm nó vào APK dịch ngược của bạn trong thư mục:

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

Bạn sẽ cần tạo các thư mục này nếu chúng không tồn tại.

Tách một GIF thành khung

Bây giờ bạn cần tìm một .gif hoạt hình mà bạn thích và muốn sử dụng làm nút home thanh điều hướng của bạn. Bạn nên sử dụng gif sticker, như bạn có thể tìm thấy trên Giphy.com/stickers - bạn sẽ nhận thấy chúng có nền trong suốt như PNG, nhưng thực tế chúng là GIF.

Khi bạn lưu một nhãn dán GIF mà bạn thích, bạn cần chuyển đổi nó thành một loạt các PNG. Điều này là do SystemUI đã sửa đổi của chúng tôi sẽ không thực sự chạy tệp .gif gốc, nó sẽ phát các PNG theo thứ tự liên tiếp. Vì vậy, chúng ta cần chia .gif thành các PNG liên tiếp, may mắn thay, chúng ta có thể dễ dàng thực hiện việc này với một trình chuyển đổi trực tuyến như EZGIF Split.

Đơn giản chỉ cần tải GIF của bạn lên công cụ Split EZGIF, chọn hình ảnh đầu ra ở định dạng PNG, từ menu thả xuống Tùy chọn chia nhỏ và nó sẽ trích xuất tất cả các khung theo thứ tự liên tiếp. Sau đó, bạn có thể tải xuống các khung với nhau trong một tệp ZIP.

Bây giờ bạn cần thêm các khung PNG từ GIF tách vào thư mục thích hợp của bản vẽ drawable-xxxDPI của bạn trong thư mục apk SystemUI đã dịch ngược. Thư mục bạn sẽ sử dụng tùy thuộc vào DPI của thiết bị, vì vậy:

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

Bây giờ chúng ta cần một tệp XML hướng dẫn Android sử dụng hình ảnh nào cho hoạt hình và cách nhanh chóng chuyển qua chúng. Quay trở lại ZIP mà bạn đã tải xuống trước đó và lấy lấy frame frame_anim.xml, và sao chép nó vào thư mục của Res res \ drawable của bạn bên trong APK đã dịch ngược.

Nếu bạn mở frame_anim.xml trong Notepad ++, nó sẽ trông như thế này:

Mỗi dòng bắt đầu bằng

Và cuối cùng, trước khi chúng ta có thể biên dịch lại SystemUI.apk, chúng ta cần đưa hoạt hình của mình lên thanh điều hướng. Đây là một mẹo nhỏ, vì chúng tôi sẽ chỉnh sửa tệp XML bố cục. Trong hầu hết các ROM stock, mã điều khiển phím chức năng thanh điều hướng HOME có thể được tìm thấy trong layout layout \ navigation_bar.xml, nhưng nó cũng có thể được tìm thấy trong layout layout \ home.xml. Bạn cần phải tìm kiếm điều này, tùy thuộc vào ROM của bạn.

Về cơ bản, bạn đang tìm kiếm bất kỳ tệp XML bố cục nào chứa mã giống như thế này:

quá khứ /> 

Bạn sẽ biết bạn đang ở đúng tệp XML khi bạn thấy các dòng tham chiếu home_button hoặc tương tự. Những gì chúng ta cần làm là ẩn khóa HOME này và đặt một cái mới vào vị trí của nó sẽ có cùng kích thước, nhưng vô hình, và sau đó các khung hình hoạt hình của chúng ta sẽ nằm bên dưới nó. Điều này thực sự khá dễ dàng, tất cả những gì chúng ta cần là mã FrameLayout .

Nếu bạn kiểm tra mã này, bạn sẽ thấy chúng ta có ba thứ khác nhau xếp chồng lên nhau như thế nào. Nhưng khi ứng dụng đang chạy, bạn sẽ không thấy nó - tất cả những gì bạn sẽ thấy là GIF hoạt hình của bạn, nơi phím HOME sẽ nằm trên thanh điều hướng.

Vì vậy, tất cả những gì bạn cần làm là thay thế dòng mã phím chức năng HOME bằng mã FrameLayout ở trên, nhưng bạn có thể cần phải điều chỉnh nó cho ROM cụ thể của mình. Một chút thử nghiệm và lỗi là cần thiết ở đây.

Biên dịch lại APK và nhấp nháy nó

Bây giờ chúng tôi đã sẵn sàng để biên dịch lại APK đã sửa đổi. Chỉ cần sử dụng Công cụ dễ dàng APK để biên dịch lại SystemUI.apk và flash nó ở chế độ phục hồi trên thiết bị của bạn. Điều quan trọng là phải làm điều này trong chế độ khôi phục, bởi vì bạn cần xóa bộ nhớ cache Dalvik hoặc các tệp smali mới mà chúng tôi đã thêm sẽ không được kích hoạt.

Nếu mọi thứ suôn sẻ, bạn sẽ thấy GIF hoạt hình của mình dưới dạng phím home thanh điều hướng mới!

Bài ViếT Thú Vị