Android 12s Material You-temasystem er blevet genskabt af en udvikler

click fraud protection

kdrag0n, udvikleren af ​​ProtonAOSP ROM, har udgivet sin egen version af "monet", Android 12s nye tapetbaserede temasystem.

Materiale You's tapetbaserede temasystem, kodenavnet "monet", gik endelig live ind Android 12 Beta 2. Temasystemet opretter farvepaletter baseret på det dominerende farveskema på dit tapet og anvender dem på Hurtige indstillinger-fliser, låseskærm, Indstillinger, pop-ups og apps. Men i sin nuværende implementering er det kun temaer del af systemets brugergrænseflade og vælg systemapps. De fleste tredjepartsapps understøtter ikke dette dynamiske tema, da Google endnu ikke har offentliggjort dokumentationen om Materiale dig. Selvom vi ikke ved, hvornår Google vil udgive ressourcer og biblioteker på Material You, er Danny Lin (kdrag0n), udvikleren af ​​ProtonAOSP ROM, kommet frem med sin egen temamotor baseret på "monet".

kdrag0ns temamotor fungerer ligesom "monet" og åbner det Pixel-eksklusive dynamiske tema til alle enheder, der kører Android 12 og nogle ældre Android-versioner. kdrag0n var udvikleren, der først fik "monet" til at fungere i tidlige Android 12-udviklerforhåndsversioner. Siden da har han reverse-engineeret Googles implementering og har endda givet feedback til medlemmer af Googles SystemUI-team, bl.a.

James O'Leary (som ser ud til at være en del af det team, der udviklede "monet" hos Google).

Ifølge kdrag0n bruger hans implementering ikke nogen kode eller API'er fra Google eller Android 12, så der er ingen afhængighed af enheder, der kører Android 12, for at hans model skal bruges. kdrag0ns temamotor følger Material You-farvemål. Disse mål er derefter "omfarvet ved at justere farverighed og nuance i @bjornornorns Oklab perceptuelle farverum. De resulterende farver er gamut-mapped til sRGB ved hjælp af gamut skæringspunkt i Oklab space." Brugere kan også ændre farverighed og få den til at prioritere farverighed frem for nøjagtige nuancer.

kdrag0ns temamotor er open source under MIT-licensen, hvilket giver brugerdefinerede ROM-udviklere (og endda OEM'er) mulighed for at implementere det, hvis de ønsker det. Faktisk udviklerens egen ProtonAOSP ROM vil være en af ​​de første til at implementere det, når Android 12-kildekoden udgives. Hvis du er en brugerdefineret ROM-udvikler, kan du vælge cherry-pick disse forpligter sig og flet dem ind i din build.

Udvikleren arbejder også på Jetpack Compose og Flutter biblioteker, som vil tillade selv apps bygget til Android 11 at understøtte dynamiske farver. Apps, der er målrettet mod ældre Android-versioner, kan registrere en lytter for at få besked, når tapetfarver ændrer sig — kdrag0ns kode er mere beregnet til at generere temaer baseret på den nye tapetfarve.

Som et eksempel på hans model, der arbejder for apps, der er målrettet mod Android 11, delte udvikleren en video med os, der demonstrerer en app, der skifter tema hvert billede ved 90fps. Bemærk, at denne demo kun er et eksempel på, hvad der kan gøres, og det anbefales ikke at blive genskabt nøjagtigt som vist.

Denne kan have et stort hit på ydeevne og batteri, selvom udviklerens Pixel 4 kan gengive temaændringer ved 90 fps for enklere visninger. Ifølge udvikleren er Jetpack Compose ikke blevet optimeret til ydeevne så meget, og Flutter-biblioteket er muligvis bedre. Under alle omstændigheder tager det kun 0,05 ms for hans motor at generere et tema, men at ændre UI-temaet belaster ikke desto mindre ydeevnen.


Mishaal Rahman bidrog til denne artikel.