Sådan bruges en GIF som din Android Navbar Home Key

  • Sådan dekompileres og temaes Android APK-filer
  • Sådan afkodes dine APK'er på lager-ROM'er
  • Krav:

    • En rodfæstet Android-telefon (Appuals har masser af Android-rodguider!)
    • Et APK-dekompileringsværktøj ( vi anbefaler APK let værktøj )
    • En god kode editor som Notesblok ++

    Dekompilering af dit SystemUI.apk

    Den første ting du skal gøre er at deodexe dit SystemUI.apk - du kan bruge et værktøj som Tickle My Android til dette. Læs vejledningen til Appuals til deodexing af APK'er på denne proces.



    Det næste trin er at dekompilere SystemUI.apk, som kræver en guide i sig selv, hvis du aldrig har gjort det før - heldigvis har Appuals “ Sådan manuelt tema Android System UI ”Med dekompileringsinstruktioner, så læs det, hvis du aldrig før har dekompileret en APK.

    Tilføjer det SMALI-filer

    Nu skal du tilføje nye smali-filer - der er en pakke med allerede modificerede .smali-filer for præcis, hvad vi skal gøre, tilgængelige HER . Specifikt skal du udtrække filen “SelfAnimatingImageView.smali” fra .zip og tilføje den til din dekompilerede APK i biblioteket:



    SystemUI.apk  smali  com  android  morningstar 

    Du bliver nødt til at oprette disse mapper, hvis de ikke findes.



    Opdeling af en GIF i rammer

    Nu skal du finde et animeret .gif, du kan lide og vil bruge som din navbar-hjemmeknap. Du skal bruge en mærkat gif, som du kan finde på Giphy.com/stickers - du vil bemærke, at de har gennemsigtige baggrunde som en PNG, men de er faktisk GIF'er.



    Når du har gemt en GIF-klistermærke, du kan lide, skal du konvertere den til en række PNG'er. Dette skyldes, at vores modificerede SystemUI faktisk ikke kører en indbygget .gif-fil, men den vil afspille PNG'er i rækkefølge. Så vi er nødt til at opdele .gif i sekventielle PNG'er, heldigvis kan vi meget let gøre dette med en online konverter som EZGIF Split .

    Upload blot din GIF til EZGIF Split-værktøjet, vælg 'Output-billeder i PNG-format' i rullemenuen Split Options, og det udtrækker alle rammerne i rækkefølge. Derefter kan du downloade rammerne sammen i en ZIP-fil.



    Nu skal du tilføje PNG-rammerne fra den delte GIF til din passende “ trækbar-xxxDPI ”-Mappe i din dekompilerede SystemUI apk-mappe. Den mappe, du vil bruge, afhænger af enhedens DPI, så:

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

    Nu har vi brug for en XML-fil, der instruerer Android, hvilke billeder der skal bruges til animationen, og hvor hurtigt vi skal cykle igennem dem. Gå tilbage til det ZIP, du downloadede tidligere, og tag fat i 'frame_anim.xml', og kopier det til din 'res drawable' -mappe inde i den dekompilerede APK.

    Hvis du åbner frame_anim.xml i Notepad ++, skal det se sådan ud:

     

    Hver linje begynder med

    Og endelig, inden vi kan kompilere SystemUI.apk igen, er vi nødt til at sætte vores animation på navlinjen. Dette er lidt vanskeligt, da vi redigerer XML-fillayoutet. I de fleste lager-ROM'er kan koden, der styrer softkey-tasten HJEM-navigationslinje, findes i 'layout navigation_bar.xml', men den findes muligvis også i 'layout home.xml'. Du skal jage efter dette afhængigt af din ROM.

    Grundlæggende leder du efter hvilken XML-fil, der indeholder layoutet, indeholder den kode, der ser sådan ud:

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

    Du ved, at du er i den rigtige XML-fil, når du ser linjer, der henviser til hjemknappen eller lignende. Hvad vi skal gøre er skjule denne HJEM-nøgle, og læg en ny på sin plads, der vil være af samme størrelse, men usynlig, og så vil vores animerede rammer gå under den. Dette er faktisk ret let, alt hvad vi har brug for er en FrameLayout kode .

     

    Hvis du undersøger denne kode, kan du se, hvordan vi har tre forskellige ting stablet oven på hinanden. Men når appen kører, kan du ikke se den - alt hvad du kan se er din animerede GIF, hvor HJEMMETasten skal være på navlinjen.

    Så alt hvad du skal gøre er at erstatte softkey'en HJEM med kode med FrameLayout-koden ovenfor, men du skal muligvis tilpasse den til din specifikke ROM. En lille smule prøving og fejl er nødvendig her.

    Genkompilering APK og blinker det

    Nu er vi klar til at kompilere den moddede APK igen. Brug blot APK Easy Tool til at kompilere SystemUI.apk igen og blinke det i gendannelsestilstand på din enhed. Det er vigtigt at gøre dette i gendannelsestilstand, fordi du skal slette Dalvik-cachen ellers aktiveres ikke de nye smali-filer, vi tilføjede.

    Hvis alt går godt, skal du se din animerede GIF som din nye navbar-hjemmetøgle!

    4 minutter læst