Android 12'nin Material You tema sistemi bir geliştirici tarafından yeniden oluşturuldu

ProtonAOSP ROM'un geliştiricisi kdrag0n, Android 12'nin yeni duvar kağıdı tabanlı tema sistemi olan "monet"in kendi sürümünü yayınladı.

Material You'nun "monet" kod adlı duvar kağıdı tabanlı tema sistemi nihayet kullanıma sunuldu Android 12 Beta 2. Tema sistemi, duvar kağıdınızın baskın renk şemasına göre renk paletleri oluşturur ve bunları Hızlı Ayarlar döşemelerine, kilit ekranına, Ayarlara, açılır pencerelere ve uygulamalara uygular. Ancak mevcut uygulamada sadece temalar sistem kullanıcı arayüzünün bir parçasıdır Ve sistem uygulamalarını seçin. Google, Material You ile ilgili belgeleri henüz yayınlamadığından çoğu üçüncü taraf uygulaması bu dinamik temayı desteklemez. Google'ın Material You'da kaynakları ve kütüphaneleri ne zaman yayınlayacağını bilmesek de ProtonAOSP ROM'un geliştiricisi Danny Lin (kdrag0n), "monet" tabanlı kendi tema motorunu ortaya çıkardı.

kdrag0n'ın tema motoru tıpkı "monet" gibi çalışır ve Pixel'e özel dinamik temayı Android 12 ve bazı eski Android sürümlerini çalıştıran tüm cihazlara açar. kdrag0n, Android 12'nin ilk geliştirici önizleme sürümlerinde "monet"in çalışmasını sağlayan ilk geliştiriciydi. O zamandan bu yana Google'ın uygulamasına tersine mühendislik uyguladı ve hatta Google'ın SystemUI ekibinin üyelerine, özellikle de geri bildirimde bulundu.

James O'Leary (Google'da "monet"i geliştiren ekibin bir parçası gibi görünüyor).

kdrag0n'a göre, uygulaması Google veya Android 12'den herhangi bir kod veya API kullanmıyor, dolayısıyla modelinin kullanılması için Android 12 çalıştıran cihazlara bağımlılık yok. kdrag0n'ın tema motoru, Material You renk hedeflerini takip eder. Daha sonra bu hedefler “@bjornornorn'un Oklab algısal renk uzayında renklilik ve renk tonu ayarlanarak yeniden renklendirildi. Ortaya çıkan renkler, Oklab uzayındaki gamut kesişimi kullanılarak sRGB'ye gamut eşlemesi yapılıyor." Kullanıcılar ayrıca renkliliği değiştirebilir ve doğru renk tonlarından ziyade renkliliğe öncelik vermesini sağlayabilir.

kdrag0n'ın tema motoru MIT lisansı altında açık kaynaktır ve özel ROM geliştiricilerinin (ve hatta OEM'lerin) isterlerse bunu uygulamalarına olanak tanır. Aslında geliştiricinin kendi ProtonAOSP ROM, Android 12 kaynak kodu yayınlandığında bunu ilk uygulayanlardan biri olacak. Özel bir ROM geliştiricisiyseniz, isteğe bağlı olarak seçim yapabilirsiniz. bu taahhütler ve bunları yapınızla birleştirin.

Geliştirici aynı zamanda Android 11 için oluşturulmuş uygulamaların bile dinamik renkleri desteklemesine olanak sağlayacak Jetpack Compose ve Flutter kitaplıkları üzerinde de çalışıyor. Eski Android sürümlerini hedefleyen uygulamalar dinleyici kaydetme duvar kağıdı renkleri değiştiğinde bildirim almak için — kdrag0n'ın kodu daha çok yeni duvar kağıdı rengine dayalı temalar oluşturmak içindir.

Geliştirici, Android 11'i hedefleyen uygulamalar için çalışan modelinin bir örneği olarak, her karede 90 fps hızında temasını değiştiren bir uygulamayı gösteren bir videoyu bizimle paylaştı. Bu demonun neler yapılabileceğine dair yalnızca bir örnek olduğunu ve tam olarak gösterildiği gibi yeniden oluşturulmasının önerilmediğini unutmayın.

Geliştiricinin Pixel 4'ü daha basit görünümler için tema değişikliklerini 90 fps'de gerçekleştirebilmesine rağmen, bu performans ve pil üzerinde büyük bir etkiye sahip olabilir. Geliştiriciye göre Jetpack Compose performans açısından pek optimize edilmedi ve Flutter kütüphanesi daha iyi olabilir. Her durumda, motorunun bir tema oluşturması yalnızca 0,05 ms sürüyor, ancak kullanıcı arayüzü temasını her karede değiştirmek yine de performansı yoruyor.


Mishaal Rahman bu makaleye katkıda bulunmuştur.