Hvordan manuelt tema Android System UI

og andre lignende spørsmål relatert til Android UI. Noen merker tillater dette gjennom temabutikker, men kjørelengde kan variere med hensyn til nøyaktig hvilke temaer som kan endres.



Det alt dette koker ned er imidlertid SystemUI.apk - og jeg skal vise deg trinn for trinn på redigering av ressursene i denne .apk for å tilpasse Android-brukergrensesnittet slik du vil. Vær oppmerksom på at denne veiledningen er for hovedsakelig AOSP-baserte ROM-er - og referanser til filer inne i SystemUI.apk kan være forskjellige fra hva du har, avhengig av telefonprodusenten. Men hvis det er tilfelle, kan du fremdeles oppnå det vi gjør, med litt prøving og feiling.

Fordi denne guiden handler om å redigere Android-systemfiler og tilpasse ROM-en din, bør du også se følgende Appual-guider:



Krav:

  • En rotfestet enhet ( søk Appual's for Android root guider )
  • ADB- og hurtigstartsverktøy ( se Appuals guide Hvordan installere ADB på Windows )
  • Java SDK
  • APKTool eller APKMultiTool
  • NotePad ++ ( eller en annen kodevennlig tekstredigerer for redigering av XML- og Smali-linjer )
  • Bilderedigeringsprogramvare som GIMP eller Photoshop
  • 7-Zip eller Winrar

Merk: For denne veiledningen bruker jeg APKTool som referanse - hvis du gikk med APKMultiTool i stedet, kan den første oppsett- og dekompilering / rekompilering være forskjellig, men generelt er trinnene de samme.



Det kan også være lurt å vurdere å installere enhetens ROM i en Android-emulator på datamaskinen din, slik at du kan teste og forhåndsvise SystemUI-endringene dine før du laster dem inn på enheten.



APKTool Setup for Windows

  1. Last ned Windows innpakningsskript (Høyreklikk, Lagre lenke som apktool.bat)
  2. Last ned apktool-2 ( finn det nyeste her )
  3. Gi nytt navn til den nedlastede jar til apktool.jar
  4. Flytt begge filene (apktool.jar & apktool.bat) til Windows-katalogen din (vanligvis C: // Windows)
  5. Hvis du ikke har tilgang til C: // Windows, kan du plassere de to filene hvor som helst og deretter legge den katalogen til din PATH-variabel for Systemvariabler.
  6. Prøv å kjøre apktool via ledeteksten

APKTool Setup for Linux

  1. Last ned Linux innpakningsskript (Høyreklikk, Lagre lenke som verktøy)
  2. Last ned apktool-2 ( finn det nyeste her )
  3. Gi nytt navn til den nedlastede jar til apktool.jar
  4. Flytt begge filene (apktool.jar & apktool) til / usr / local / bin (root nødvendig)
  5. Forsikre deg om at begge filene kan kjøres (chmod + x)
  6. Prøv å kjøre apktool via cli

APKTool Setup for Mac OS X

  1. Last ned Mac innpakningsskript (Høyreklikk, Lagre lenke som verktøy)
  2. Last ned apktool-2 ( finn det nyeste her )
  3. Gi nytt navn til den nedlastede jar til apktool.jar
  4. Flytt begge filene (apktool.jar & apktool) til / usr / local / bin (root nødvendig)
  5. Forsikre deg om at begge filene kan kjøres (chmod + x)
  6. Prøv å kjøre apktool via cli

Dekompilering av SystemUI.Apk med APKTool

  1. Etter å ha installert APKTool, må vi hente rammefilen din fra enheten via ADB. De generisk AOSP rammefilen heter ‘ framework-res.apk ’ funnet i / system / rammeverk på enheten din, men de fleste produsenter inkluderer sine egne rammefiler i tillegg til AOSP-rammeverket.
  2. Dette kan være vanskelig fordi du må finne ut at produsenten ga rammeverksfilen på enheten din. De vil vanligvis bli funnet i / system / rammeverk , men noen ganger kan de være skjult i / data / system-framework eller / system / priv-app . Filene i seg selv vil vanligvis ha ressurser ’ , 'storfekjøtt' , eller ‘ rammeverk ' i filnavnene.
  3. Når du har funnet rammefilen, trekker du den sammen med SystemUI.apk via ADB-konsollen. Du vil gjøre dette med kommandoen:
  4. adb pull /system/framework/framework-res.apk (endre banen om nødvendig og gjør den samme kommandoen for SystemUI.apk)
  5. Du finner de hentede filene i hovedmappen for ADB-installasjon på datamaskinen din.
  6. Nå skal vi installere dem i APKTool. Så i en ledetekst skriver du:
  7. Apktool hvis så for eksempel apktool hvis C: ADB framework-res.apk
  8. Gjenta ovenstående for SystemUI.apk
  9. Nå skal vi dekompilere SystemUI.apk, så skriv inn kommandovinduet: apktool d SystemUI.apk
  10. Dette vil trekke ut hele SystemUI.apk i en serie mapper.

Redigere ikoner og UI-farger

Så nå må du finne ut DPI på telefonen din, fordi du vil ha mapper som SystemUI / res / drawable-hdpi, SystemUI / res / xhdpi osv. Slik fungerer det:



  • ldpi (lav) ~ 120 dpi
  • mdpi (middels) ~ 160 dpi
  • hdpi (høy) ~ 240 dpi
  • xhdpi (ekstra høy) ~ 320 dpi
  • xxhdpi (ekstra-ekstra høy) ~ 480 dpi
  • xxxhdpi (ekstra-ekstra-ekstra høy) ~ 640 dpi

Så for å redigere SystemUI-ressursene dine, må du finne ut hvilken kategori skjermen faller inn under.

Inne i mappen ser du stort sett alle .png-filene som brukes til systemgrensesnittet ditt - alt fra varslingslinjeikonene, ikonene for hurtiginnstillinger, osv. De faktiske filnavnene kan variere avhengig av produsent, men AOSP baserte ROM-er skal vanligvis ha filer som heter dette:

  • Notification_panel_bg.9 ( statuslinjens bakgrunn)
  • ic_qs _ ####. png ( paneler for hurtiginnstillinger)
  • stat_syst _ ####. png ( statuslinjeikoner)

Men det er ikke sikkert at produsenten din følger disse navnekonvensjonene, så du må bare se på .png-ene nøye for å finne ut nøyaktig hva de er for.

Viktig: Hvis du får .9.png-filer, må du ikke prøve å redigere dem direkte i GIMP eller Photoshop uten en veiledning først. Dette er 9Patch .png-filer som har synlige rammer når du redigerer bildene, men disse kantene blir usynlige i Android-brukergrensesnittet gjennom spesiell teknikk ( for lenge til å forklare), og det er en spesiell metode for å manipulere dem. Du bør bruke Tegn verktøyet med 9 lapper fra Android Studio, eller lær hvordan du riktig redigerer / lager 9Patch-bilder i Photoshop / GIMP.

For å redigere den faktiske bakgrunnsfargen på selve hurtiginnstillingspanelet, må du åpne /res/values/colors.xml og rediger linjene deretter. Linjene bør faktisk kommenteres med forklaringer eller i det minste ganske enkle å forstå navnekonvensjoner. Dette er grunnen til at jeg anbefalte å bruke en Android-emulator for å forhåndsvise og finjustere mens du går videre.

Redigere tekstfarger

Sjekk inn /res/layout/tw_statusbar.xml for disse linjene:

Tekstfarge på batteriikon ( hvis batteriet vises som tekstprosent)

Klokke tekst farge:

Sjekk inn /res/layout/tw_status_bar_expanded_header.xml for disse linjene:

Nedtrekkbar klokkefarge

Datofarge

“@ Style / TextAppearance.StatusBar.Expanded.Date” android: textColor = ”# noe”

Det er så mange ting å tilpasse i SystemUI, jeg kan ikke forklare alle de små tingene i denne guiden - du kan finne en SystemUI-temaveiledning som forklarer hver eneste linje i .XML-filene, men det går bra hvis du bare lager forhåndsvise endringene dine i en Android-emulator og finjustere etter hvert.

Kompilere og installere det modifiserte SystemUI.Apk

  1. I et kommandovindu skriver du: apktool b SystemUI
  2. Dette vil opprette en ny .apk-mappe i en Dist mappen i dekompilerte APK-katalogen. Så se inn / systemUI / dist for den nye SystemUI.apk-filen.
  3. Nå må du bruke noe sånt som 7-Zip for å kopiere og erstatte META-INF-mappen og AndroidManifest.XML fra original APK inn i det ny APK, kompiler deretter på nytt.
  4. Du kan nå blinke det nye SystemUI.apk til enheten.

Glad modding!

5 minutter lest