Material You Monetų temos variklis yra pagrindinis „Android 12“ akcentas, ir štai kaip jis veikia

„Google“ medžiaga jums nėra taip sudėtinga suprasti, nors vienoje vietoje nėra daug informacijos. Patikrinkite čia!

Greitos nuorodos

  • Kaip veikia monetų temos variklis
  • Kas nutiko vykdymo laiko išteklių perdangoms (RRO)?
  • Medžiaga Jūs vis dar tobulėjate
  • „Android 13“ pakeitimai

Iki šiol didžiausias pokytis Android 12 yra Medžiaga tu, naujausia „Google“ medžiagų dizaino kalbos versija. Medžiaga jums, kaip apibūdina „Google“,siekia sukurti dizainą, kuris būtų individualus kiekvienam stiliui, prieinamas kiekvienam poreikiui, gyvas ir pritaikomas kiekvienam ekranui.Kurdama „Android 12“, „Google“ sukūrė naują temos variklį, pavadintą „monet“, kuris sukuria turtingą pastelinių spalvų paletę. gautas iš vartotojo ekrano užsklandos. Šios spalvos pritaikomos įvairioms sistemos dalims, o jų reikšmės pateikiamos per API, kurią gali iškviesti naudotojo programos, leisdamos programoms nuspręsti, ar jos taip pat nori pakeisti savo spalvą UI. „Google“ visapusiškai ieškojo „Material You“ ir bendrovė atnaujino daugumą savo programų, įtraukdama dinamines spalvas.

Medžiagų dizaino istorijos greitojo kurso metu jis pirmą kartą buvo paleistas naudojant „Android 5 Lollipop“, daugiausia dėmesio skiriant naudotojų patirčiai. Kaip „Google“ tai pateikia„Medžiaga yra pritaikoma gairių, komponentų ir įrankių sistema, kuri palaiko geriausią praktiką vartotojo sąsajos dizainas." Jame buvo plokščios, pastelinės spalvos paletės, gylis, švelnus apšvietimas ir tikroviškas fizika. „Android 9 Pie“ matė Material Design 2 atsiradimą, nors tai nebuvo toks didelis vizualinis remontas, kaip buvo pirmoji „Material Design“ iteracija. „Android 12“ pasirodė Medžiagos dizainas 3, kuris yra reikšmingesnis kapitalinis remontas.

Tačiau atimkite spalvų temos variklį, o Material You iš tikrųjų nėra kad skirtinga. Tiesą sakant, asmeninis elementas, pažymėtas „tu“, daugiau ar mažiau išnyksta.

Kaip veikia monetų temos variklis

„Pinigų“ temos variklis yra ta vieta, kur magija nutinka, kai kalbama apie „Material You“, o būtent algoritmas nusprendžia, kokios spalvos pasirenkamos iš fono. „Monet“ buvo pridėtas prie AOSP „Android 12L“. Pasirinktiniai ROM kūrėjai taip pat gali tai įgyvendinti atvirojo kodo „monet“ diegimas. Trečiųjų šalių programų kūrėjai yra nemokami pridėti dinaminių spalvų palaikymą šiuo metu, net jei šiuo metu jis veiks tik ribotame įrenginių skaičiuje.

Esu tikras, kad pirmasis klausimas, kurį dauguma žmonių turi apie „Material You“, yra tai, kaip kiekvieną kartą pavyksta parinkti kartu derančias ir gerai kontrastuojančias spalvas. Išbandžiau daugybę tapetų, norėdamas sulaužyti spalvų parinkimo algoritmą, bet nė vienam iš jų nepavyko to padaryti. Jis vis dar renkasi spalvas, kurios kiekvieną kartą veikia kartu, o tai, švelniai tariant, yra įspūdingas žygdarbis. Norėdami sužinoti, kaip veikia „Android 12“ spalvų parinkimo algoritmas, vienas iš dviejų velykinių kiaušinių pateikiamas kaip valdiklis, kurį galite pridėti prie darbalaukio. Valdiklis rodo visas spalvas, pasirinktas pagal monetą, ir galite bakstelėti, kad būtų rodomas visame ekrane. Kai rodomas viso ekrano režimas, galite paliesti spalvą, kad ją bendrintumėte. Kai jį bendrinate, išvestis atrodo taip:

A1-600 (@android:color/system_accent1_600)
currently: #626200

Kai naudotojas pakeičia ekrano foną „Android 12“ įrenginyje, vaizdas analizuojamas, kad būtų pasirinkta spalva ir algoritmiškai pasirinkite pirminę, antrinę, tretinę ir klaidos spalvas naudodami pradinę sėklą spalva. Taip pat pasirinktos dvi neutralios spalvos, kurios suteikia Material You bendrą atspalvį. Tuo pačiu metu ji taiko spalvų teoriją ir prieinamumo taisykles. Iš šių spalvų algoritmas sukuria tonų paletes nuo 0 % skaisčio (JUODOS) iki 100 % (BALTOS). Dinaminis arba tinkintas temų kūrimas naudoja šių tonų palečių vertes, kad nustatytų tos spalvų diapazono temos atributus. Jis ištraukia iki 128 spalvų iš tapetų į CIELAB spalvų erdvę kaip tarpininkas, tada tos spalvos susietas su CAM16. CAM16 cspalvinga aišvaizda model naudojamas rūšiuoti ir filtruoti spalvas, siekiant nustatyti tikrąją sėklos spalvą, o tada paletės generuojamos naudojant tą sėklos spalvą. Vėliau šios spalvos grąžinamos į RGB, kad būtų galima nustatyti spalvas visoje sistemoje.

CIELAB kartais dar vadinamas „L*a*b*“. L* – suvokiamas ryškumas/lengvumas, o a* ir b* – keturios unikalios žmogaus regėjimo spalvos – raudona, žalia, mėlyna ir geltona. Šviesumas naudojamas skaičiuojant kontrasto santykį, užtikrinantį skaitomumą. Pritaikę gausite visas gražias visos sistemos spalvas, kurias galima įdiegti sistemos vartotojo sąsajoje, programose ir kt.

Kas nutiko vykdymo laiko išteklių perdangoms (RRO)?

RRO niekur nedingo, o medžiaga jums veikia per Fabricated Overlays API. Anksčiau mes kalbėjome apie kaip „Fabricated Overlays“ gali būti naudojamos norint sugrąžinti temą be šaknų. Pagamintos perdangos yra naujas „Android 12“ priedas ir veikia šiek tiek kitaip nei RRO. Viena, RRO dirbti per įrenginyje įdiegtą perdangos APK, o pagaminta perdanga tiesiog nurodo programai, kokias spalvas naudoti naudoti.

Pagamintos perdangos taip pat yra šiek tiek labiau ribotos nei RRO. Prieš naudojant „Android 11“, RRO galėjo nepaisyti beveik bet kokių išteklių: loginius, sveikuosius skaičius, matmenis, atributus, išdėstymus ir net neapdorotus duomenų failai. „Android 11“ padarė keletą RRO veikimo pakeitimų, todėl nebeįmanoma pakeisti išdėstymo. Kita vertus, pagamintos perdangos gali nepaisyti tik reikšmių, kurios gali būti pateikiamos kaip sveikieji skaičiai. Tai apima sveikuosius skaičius, matmenis, logines vertes ir spalvas. Negalite jų naudoti neapdorotų duomenų išteklių, išdėstymo, eilučių ar masyvų nepaisymui – bent jau ne taip lengvai.

Vis dėlto šie apribojimai nėra svarbūs, kai kalbama apie „Material You“ ir „pinigus“. Sukurtos perdangos leidžia sistemai lengvai pritaikyti spalvų ir matmenų perdangas, nelaukiant, kol APK bus sukompiliuotas arba sistema perkraus, kad ją pritaikytų.

Medžiaga Jūs vis dar tobulėjate

„Medžiaga You“ dinamiškos spalvos tikrai nėra be problemų, ir jas iš esmės sulaužyti nėra taip sunku. Pavyzdžiui, jei greitai pakeisite ekrano užsklandą, galite veiksmingai inicijuoti atsisakymo teikti paslaugas ataką. Mišaalas Rahmanas patvirtino kad ši paslaugų atsisakymo ataka buvo ištaisyta naudojant „Android 12L“. Nuoširdžiai tikiuosi, kad „Material You“ būsimose versijose bus patobulinta, nes, nors man jis patinka ir jos koncepcija, reikia daug dirbti. Iš savo asmeninės patirties manau, kad dėl jo klaidos iš dalies jis nebuvo įtrauktas į AOSP... tai ir tai, kad „Google“ iš tikrųjų padarė tai išskirtiniu „Pixel“ serijos laiku. Neseniai net susidūriau su problema, kai atnaujinau „Android 13“ gruodžio mėnesio pataisą „Google Pixel 7“ Pro, kurį vėliau „logcat“ susekiau, kad jį sukėlė „Material You“ ir „Google Pixel“. paleidimo priemonė.

erzina, „Android 12“ pašalino tinkintus šriftus ir tinkintus piktogramų pasirinkimus „Material You“ dinamiškos temos naudai. Temų sistema pirmą kartą buvo pristatyta naudojant „Pixel Themes“ programą ir buvo pagrįsta „Android“ perdanga pagrįsta temų sistema. Nors „Android 12“ „Material You“ temų sistema yra labiau pritaikoma, joje nėra tinkintų stilių, kuriuos „Google“ pristatė „Android 10“. A komentarą „Google“ problemų stebėjimo priemonėje „Google“ darbuotojas pateikė šiuos motyvus, kodėl jis buvo pašalintas:

„Pasirinktinės stiliaus funkcijos (šriftas, piktogramos forma, piktogramų paketas ir akcento spalva) R yra pakeičiamos nauja dinaminio temos funkcija, kurią pristatome S. Manome, kad nauja dinaminė teminė funkcija yra modernesnė ir išmanesnė. Paprasta ir maloni patirtis, kuria, tikimės, galės mėgautis visi vartotojai.

Atrodo mažai tikėtina, kad „Google“ ateityje iš naujo pristatys šriftus ir pasirinktinius piktogramų pasirinkimus. Daugelis vartotojų išreiškė savo nusivylimą „Google“ medžiagos pokyčiais ir, atsižvelgiant į tai, kaip jie gali būti sugadinti, aš visiškai suprantu, kodėl. Tikimės, kad „Google“ pagerins jos įgyvendinimą kiti originalios įrangos gamintojai nepatenka į tuos pačius spąstus jų diegimuose, kuriuos turi „Google“.

„Android 13“ pakeitimai

„Google“ patobulino „Material You“. už paleidimą Android 13, o vienas pirmųjų patobulinimų buvo penkių papildomų spalvų stilių pridėjimas. Šie nauji spalvų stiliai vadinami TONAL_SPOT, VIBRANT, EXPRESSIVE, SPRITZ, RAINBOW ir FRUIT_SALAD. Mes padarėme ekrano kopijas ir parodėme jas žemiau.

  • TONAL_SPOT: numatytosios medžiagos spalvos
  • VIBRANT: sukuria toniškesnę paletę su šiek tiek skirtingais atspalviais ir spalvingesnėmis antrinėmis ir fono spalvomis
  • EXPRESSIVE: sukuria paletę su keliais ryškiais atspalviais, kurie yra spalvingesni nei VIBRANT
  • SPRITZ: sukuria žemesnę spalvų paletę

„Android 13“ taip pat pristatė galimybę kūrėjams turėti teminių programų piktogramas, kad jie galėtų perimti sistemos temą. Kūrėjai gali tai palaikyti savo programose pateikdami ir prisitaikančią piktogramą, ir vienspalvę programos piktogramą. Vis dėlto paleidimo priemonė turi palaikyti temines piktogramas, pvz., „Google Pixel“ paleidimo priemonę.


Ačiū XDA vyresniajam nariui kdrag0n, tiek ProtonAOSP, tiek kūrėjas Material You teminės sistemos atkūrimas, už pagalbą šiame straipsnyje!