Så här använder du en GIF som din Android Navbar Home Key

  • Hur dekompilerar och teman Android APK-filer
  • Så här avkodar du dina APK-filer på lager-ROM-filer
  • Krav:

    • En rotad Android-telefon (Appuals har gott om Android-rotguider!)
    • Ett APK-dekompileringsverktyg ( vi rekommenderar APK enkelt verktyg )
    • En bra kodredigerare som Anteckningsblock ++

    Dekompilering av ditt SystemUI.apk

    Det första du behöver göra är att deodexa din SystemUI.apk - du kan använda ett verktyg som Tickle My Android för detta. Läs Appuals guide för deodexing av APK-filer för denna process.



    Nästa steg är att dekompilera SystemUI.apk, som kräver en guide av sig själv om du aldrig har gjort det tidigare - lyckligtvis har Appuals ' Hur man manuellt tema Android System UI ”Med dekompileringsinstruktioner, så läs det om du aldrig har dekompilerat en APK tidigare.

    Lägger till de SMALI-filer

    Nu måste du lägga till nya smali-filer - det finns ett paket med redan modifierade. Smali-filer för exakt vad vi behöver göra tillgängliga HÄR . Närmare bestämt måste du extrahera filen 'SelfAnimatingImageView.smali' från .zip och lägga till den i din dekompilerade APK i katalogen:



    SystemUI.apk  smali  com  android  morningstar 

    Du måste skapa dessa mappar om de inte finns.



    Dela upp en GIF i ramar

    Nu måste du hitta en animerad .gif du gillar och vill använda som navbar-hemknapp. Du bör använda en klistermärke gif, som du kan hitta på Giphy.com/stickers - du kommer att märka att de har transparenta bakgrunder som en PNG, men de är faktiskt GIF.



    När du har sparat en GIF-klistermärke som du gillar måste du konvertera den till en serie PNG-filer. Detta beror på att vårt modifierade SystemUI inte faktiskt kommer att köra en inbyggd .gif-fil, utan kommer att spela upp PNG i sekventiell ordning. Så vi måste dela upp .gif i sekventiella PNG, lyckligtvis kan vi mycket enkelt göra det med en online-omvandlare som EZGIF Split .

    Ladda bara upp din GIF till EZGIF Split-verktyget, välj “Output images in PNG format” från rullgardinsmenyn Split Options, så extraheras alla ramar i sekventiell ordning. Sedan kan du ladda ner ramarna tillsammans i en ZIP-fil.



    Nu måste du lägga till PNG-ramar från den delade GIF till din lämpliga ' drawable-xxxDPI ”-Mappen i din dekompilerade SystemUI apk-mapp. Mappen du använder beror på enhetens DPI, så:

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

    Nu behöver vi en XML-fil som instruerar Android vilka bilder som ska användas för animeringen och hur snabbt vi ska bläddra igenom dem. Gå tillbaka till ZIP du hämtade tidigare och ta tag i “frame_anim.xml” och kopiera den till din “res drawable” mapp i den dekompilerade APK-filen.

    Om du öppnar frame_anim.xml i Notepad ++ ska det se ut så här:

     

    Varje rad börjar med

    Och slutligen, innan vi kan kompilera om SystemUI.apk, måste vi sätta vår animering på navbar. Det här är lite knepigt eftersom vi redigerar XML-filens layout. I de flesta lager-ROM-skivor finns koden som styr funktionstangenten HOME navbar i 'layout navigation_bar.xml', men den kan också hittas i 'layout home.xml'. Du måste leta efter detta beroende på din ROM.

    I grund och botten letar du efter vilken layout XML-fil som innehåller koden som ser ut så här:

    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 vet att du har rätt XML-fil när du ser rader som refererar till hemknapp eller liknande. Vad vi behöver göra är Dölj den här HEM-nyckeln och placera en ny på sin plats som kommer att ha samma storlek, men osynlig, och sedan kommer våra animerade ramar att gå under den. Detta är faktiskt ganska enkelt, allt vi behöver är en FrameLayout koda .

     

    Om du undersöker den här koden ser du hur vi har tre olika saker staplade ovanpå varandra. Men när appen körs kommer du inte att se den - allt du ser är din animerade GIF där HEM-tangenten ska vara i navfältet.

    Så allt du behöver göra är att ersätta programknappen HOME med kod med FrameLayout-koden ovan, men du kan behöva justera den för din specifika ROM. Här är lite försök och fel nödvändigt.

    Kompilering APK och blinkar det

    Nu är vi redo att kompilera om den modifierade APK-filen. Använd bara APK Easy Tool för att kompilera om SystemUI.apk och blinka det i återställningsläge på din enhet. Det är viktigt att göra detta i återställningsläge, eftersom du måste torka Dalvik-cachen, annars aktiveras inte de nya smali-filerna som vi har lagt till.

    Om allt går bra bör du se din animerade GIF som din nya navbar-hemnyckel!

    4 minuter läst