Cum să utilizați un GIF ca cheie de pornire Android Navbar

  • Cum să decompilezi și să temi APK-urile Android
  • Cum să vă Deodex APK-urile pe ROM-uri stoc
  • Cerințe:

    • Un telefon Android înrădăcinat (Appuals are o mulțime de ghiduri root Android!)
    • Un instrument de descompilare APK ( iti recomandam Instrument ușor APK )
    • Un editor de cod bun cum ar fi Notepad ++

    Decompilarea SystemUI.apk

    Primul lucru pe care trebuie să-l faci este deodex SystemUI.apk - poți folosi un instrument precum Tickle My Android pentru asta. Citiți ghidul Appuals pentru deodexarea APK-urilor în acest proces.



    Următorul pas este descompilarea SystemUI.apk, care necesită un ghid de la sine, dacă nu ați făcut-o niciodată înainte - din fericire, Appuals a „ Cum să manualizați interfața de utilizare a sistemului Android ”Cu instrucțiuni de descompilare, așa că dați o citire dacă nu ați decompilat niciodată un APK înainte.

    Se adaugă Fișiere SMALI

    Acum trebuie să adăugați noi fișiere smali - există un pachet de fișiere .smali deja modificate pentru exact ceea ce trebuie să facem disponibil AICI . Mai exact, trebuie să extrageți fișierul „SelfAnimatingImageView.smali” din fișierul .zip și să îl adăugați în APK-ul decompilat din director:

    SystemUI.apk  smali  com  android  morningstar 

    Va trebui să creați aceste foldere dacă acestea nu există.



    Împărțirea unui GIF în cadre

    Acum trebuie să găsiți un .gif animat care vă place și doriți să îl folosiți ca buton de pornire al barei de navigare. Ar trebui să utilizați un autocolant gif, așa cum poți găsi pe Giphy.com/stickers - veți observa că au fundaluri transparente, cum ar fi PNG, dar sunt de fapt GIF-uri.



    Odată ce salvați un autocolant GIF care vă place, trebuie să îl convertiți într-o serie de PNG-uri. Acest lucru se datorează faptului că SystemUI-ul nostru modificat nu va rula de fapt un fișier nativ .gif, va reda PNG-uri în ordine secvențială. Deci, trebuie să împărțim .gif în PNG-uri secvențiale, din fericire putem face foarte ușor acest lucru cu un convertor online, cum ar fi EZGIF Split .

    Pur și simplu încărcați GIF-ul în instrumentul EZGIF Split, alegeți „Ieșire imagini în format PNG” din meniul derulant Split Options și acesta va extrage toate cadrele în ordine secvențială. Apoi, puteți descărca cadrele împreună într-un fișier ZIP.



    Acum trebuie să adăugați cadrele PNG din GIF-ul divizat în drawable-xxxDPI ”Din folderul apk SystemUI decompilat. Dosarul pe care îl veți utiliza depinde de DPI-ul dispozitivului dvs., deci:

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

    Acum avem nevoie de un fișier XML care să instruiască Android ce imagini să folosească pentru animație și cât de repede să le parcurgem. Reveniți la ZIP-ul pe care l-ați descărcat mai devreme și apucați „frame_anim.xml” și copiați-l în folderul „res drawable” din APK-ul decompilat.

    Dacă deschideți frame_anim.xml în Notepad ++, ar trebui să arate astfel:

     

    Fiecare linie care începe cu

    Și, în cele din urmă, înainte de a putea recompila SystemUI.apk, trebuie să punem animația pe bara de navigație. Este puțin dificil, deoarece vom edita fișierul XML de aspect. În majoritatea ROM-urilor stoc, codul care controlează softkey-ul HOME navbar poate fi găsit în „layout navigation_bar.xml”, dar poate fi găsit și în „layout home.xml”. Trebuie să vânați pentru asta, în funcție de ROM.

    Practic, căutați orice fișier XML de aspect conține codul care arată astfel:

    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' />

    Veți ști că vă aflați în fișierul XML potrivit când vedeți linii care fac referire la buton_acasă sau asemănător. Ce trebuie să facem este ascunde această cheie HOME și puneți una nouă în locul său, care va avea aceeași dimensiune, dar invizibilă, iar apoi cadrele noastre animate vor intra sub ea. Acest lucru este de fapt destul de ușor, tot ce avem nevoie este un FrameLayout cod .

     

    Dacă examinați acest cod, veți vedea cum avem trei lucruri diferite suprapuse. Dar când aplicația rulează, nu o veți vedea - tot ce veți vedea este GIF-ul dvs. animat, unde cheia HOME ar trebui să fie pe bara de navigare.

    Deci, tot ce trebuie să faceți este să înlocuiți linia de cod a tastei soft HOME cu codul FrameLayout de mai sus, dar poate fi necesar să o modificați pentru ROM-ul dvs. particular. Un pic de încercare și eroare este necesar aici.

    Recompilarea APK-ul și intermitent

    Acum suntem gata să recompilăm APK-ul modificat. Pur și simplu utilizați APK Easy Tool pentru a recompila SystemUI.apk și blocați-l în modul de recuperare de pe dispozitiv. Este important să faceți acest lucru în modul de recuperare, deoarece trebuie să ștergeți memoria cache Dalvik sau altfel noile fișiere smali pe care le-am adăugat nu vor fi activate.

    Dacă totul merge bine, ar trebui să vă vedeți GIF-ul animat ca noua cheie de pornire a barei de navigație!

    4 minute citite