Il sistema di temi Material You di Android 12 è stato ricreato da uno sviluppatore

kdrag0n, lo sviluppatore della ROM ProtonAOSP, ha rilasciato la propria versione di "monet", il nuovo sistema di temi basato su sfondi di Android 12.

Il sistema tematico basato su sfondi di Material You, nome in codice "monet", è finalmente entrato in funzione Android12Beta2. Il sistema di temi crea tavolozze di colori basate sulla combinazione di colori dominante dello sfondo e le applica ai riquadri Impostazioni rapide, alla schermata di blocco, alle Impostazioni, ai popup e alle app. Tuttavia, nella sua attuale implementazione, solo temi parte dell'interfaccia utente del sistema E seleziona le app di sistema. La maggior parte delle app di terze parti non supporta questa tematica dinamica poiché Google non ha ancora pubblicato la documentazione su Material You. Anche se non sappiamo quando Google pubblicherà risorse e librerie su Material You, Danny Lin (kdrag0n), lo sviluppatore della ROM ProtonAOSP, ha lanciato il proprio motore di temi basato su "monet".

il motore dei temi di kdrag0n

funziona proprio come "monet" e apre i temi dinamici esclusivi Pixel a tutti i dispositivi con Android 12 e alcune versioni Android precedenti. kdrag0n è stato lo sviluppatore che per primo ha fatto funzionare "monet" nelle prime build di anteprima per sviluppatori di Android 12. Da allora, ha decodificato l'implementazione di Google e ha persino fornito feedback ai membri del team SystemUI di Google, in particolare James O'Leary (che sembra far parte del team che ha sviluppato "monet" presso Google).

Secondo kdrag0n, la sua implementazione non utilizza alcun codice o API di Google o Android 12, quindi non c'è dipendenza dai dispositivi che eseguono Android 12 per l'utilizzo del suo modello. Il motore dei temi di kdrag0n segue i target dei colori Material You. Questi obiettivi sono quindi “ricolorato regolando la vivacità e la tonalità nello spazio colore percettivo Oklab di @bjornornorn. I colori risultanti vengono mappati nella gamma sRGB utilizzando l’intersezione della gamma nello spazio Oklab. Gli utenti possono anche modificare la vivacità e dare priorità alla vivacità rispetto alle sfumature precise.

Il motore dei temi di kdrag0n è open source con licenza MIT, consentendo agli sviluppatori di ROM personalizzate (e persino agli OEM) di implementarlo se lo desiderano. In effetti, è proprio dello sviluppatore ProtoneAOSP La ROM sarà una delle prime a implementarla quando verrà pubblicato il codice sorgente di Android 12. Se sei uno sviluppatore di ROM personalizzate, puoi scegliere questi impegni e uniscili nella tua build.

Lo sviluppatore sta anche lavorando sulle librerie Jetpack Compose e Flutter, che consentiranno anche alle app create per Android 11 di supportare i colori dinamici. Le app destinate a versioni Android precedenti possono registrare un ascoltatore per ricevere una notifica quando cambiano i colori dello sfondo: il codice di kdrag0n è pensato più per generare temi basati sul nuovo colore dello sfondo.

Come esempio del funzionamento del suo modello per app destinate ad Android 11, lo sviluppatore ha condiviso con noi un video in cui mostra un'app che cambia tema a ogni fotogramma a 90 fps. Tieni presente che questa demo è solo un esempio di ciò che può essere fatto e non è consigliabile ricrearla esattamente come mostrato.

Questo può avere un grande successo in termini di prestazioni e batteria, sebbene Pixel 4 dello sviluppatore possa eseguire modifiche al tema a 90 fps per visualizzazioni più semplici. Secondo lo sviluppatore, Jetpack Compose non è stato ottimizzato molto per le prestazioni e la libreria Flutter potrebbe essere migliore. In ogni caso, il suo motore impiega solo 0,05 ms per generare un tema, ma cambiare il tema dell'interfaccia utente a ogni fotogramma incide comunque negativamente sulle prestazioni.


Mishaal Rahman ha contribuito a questo articolo.