kdrag0n, der Entwickler des ProtonAOSP ROM, hat seine eigene Version von „monet“ veröffentlicht, dem neuen hintergrundbasierten Designsystem für Android 12.
Das auf Hintergrundbildern basierende Themensystem von Material You mit dem Codenamen „Monet“ ist endlich live gegangen Android 12 Beta 2. Das Designsystem erstellt Farbpaletten basierend auf dem vorherrschenden Farbschema Ihres Hintergrundbilds und wendet diese auf Schnelleinstellungskacheln, Sperrbildschirm, Einstellungen, Popups und Apps an. In der aktuellen Implementierung ist dies jedoch nur der Fall Themen sind Teil der Systembenutzeroberfläche Und Wählen Sie System-Apps aus. Die meisten Apps von Drittanbietern unterstützen dieses dynamische Theme nicht, da Google die Dokumentation zu Material You noch nicht veröffentlicht hat. Wir wissen zwar nicht, wann Google Ressourcen und Bibliotheken auf Material You veröffentlichen wird, aber Danny Lin (kdrag0n), der Entwickler des ProtonAOSP ROM, hat seine eigene Theme-Engine auf Basis von „monet“ herausgebracht.
Die Theme-Engine von kdrag0n Funktioniert genau wie „monet“ und öffnet das Pixel-exklusive dynamische Design für alle Geräte mit Android 12 und einigen älteren Android-Versionen. kdrag0n war der Entwickler, der „monet“ erstmals in frühen Android 12-Entwicklervorschau-Builds zum Laufen gebracht hat. Seitdem hat er die Implementierung von Google rückentwickelt und insbesondere Mitgliedern des SystemUI-Teams von Google Feedback gegeben James O'Leary (der offenbar Teil des Teams ist, das „Monet“ bei Google entwickelt hat).
Laut kdrag0n verwendet seine Implementierung keinen Code oder APIs von Google oder Android 12, sodass für die Verwendung seines Modells keine Abhängigkeit von Geräten mit Android 12 besteht. Die Theme-Engine von kdrag0n folgt den Farbzielen von Material You. Diese Ziele sind dann „Neu eingefärbt durch Anpassen der Farbigkeit und des Farbtons im Oklab-Wahrnehmungsfarbraum von @bjornornorn. Die resultierenden Farben werden mithilfe der Gamut-Schnittmenge im Oklab-Raum auf sRGB abgebildet.“ Benutzer können auch die Farbigkeit ändern und festlegen, dass die Farbigkeit Vorrang vor präzisen Farbtönen hat.
Die Theme-Engine von kdrag0n ist Open-Source unter der MIT-Lizenz und ermöglicht Entwicklern benutzerdefinierter ROMs (und sogar OEMs) die Implementierung, wenn sie dies wünschen. Tatsächlich das eigene des Entwicklers ProtonAOSP ROM wird einer der ersten sein, der es implementiert, wenn der Android 12-Quellcode veröffentlicht wird. Wenn Sie ein benutzerdefinierter ROM-Entwickler sind, können Sie sich die Rosinen aussuchen diese Commits und fügen Sie sie in Ihren Build ein.
Der Entwickler arbeitet außerdem an den Bibliotheken Jetpack Compose und Flutter, die es sogar Apps ermöglichen, die für Android 11 entwickelt wurden, dynamische Farben zu unterstützen. Apps, die auf ältere Android-Versionen abzielen, können dies tun Registrieren Sie einen Zuhörer um benachrichtigt zu werden, wenn sich die Hintergrundfarben ändern – der Code von kdrag0n ist eher für die Generierung von Themen basierend auf der neuen Hintergrundfarbe gedacht.
Als Beispiel für sein Modell, das für Apps für Android 11 funktioniert, hat der Entwickler ein Video mit uns geteilt, in dem er eine App demonstriert, die bei jedem Frame mit 90 Bildern pro Sekunde ihr Thema ändert. Bitte beachten Sie, dass es sich bei dieser Demo lediglich um ein Beispiel dafür handelt, was möglich ist. Es wird nicht empfohlen, sie genauso wie gezeigt nachzubilden.
Dies kann einen großen Einfluss auf Leistung und Akku haben, obwohl das Pixel 4 des Entwicklers Designänderungen mit 90 Bildern pro Sekunde rendern kann, um einfachere Ansichten zu ermöglichen. Nach Angaben des Entwicklers wurde Jetpack Compose nicht so stark auf Leistung optimiert und die Flutter-Bibliothek könnte besser sein. Auf jeden Fall benötigt seine Engine nur 0,05 ms, um ein Thema zu generieren, aber das Ändern des UI-Themas in jedem Frame ist dennoch eine Belastung für die Leistung.
Mishaal Rahman hat zu diesem Artikel beigetragen.