Isixhobo Utshintshe ukwenza ngokwezifiso kwi-Android ngomnikelo onamandla kodwa ekulula ukuwusebenzisa: imibala eguqukayo ehambelana nomsebenzisiEmva komlingo yi-injini eyilwe ngononophelo yokutsalwa kombala kunye ne-injini yokwandisa engapeyinti kuphela iindawo ezintle zojongano, kodwa ikwaqinisekisa ukungaguquguquki, ukufikeleleka, kunye nokuqikelelwa kubaphuhlisi kunye nee-OEMs.
Kwesi sikhokelo sikuxelela ngokweenkcukacha ukuba i-palette yombala oguqukayo isebenza njani, uveliswa njani kwiphepha lodonga okanye umbala wembewu, kwaye njani. Guqula umxholo kwi-Android 12 kunye ne-Android 13 ngokulandela iingcebiso ze-AOSP kunye noYilo lweMaterial 3. Uya kubona kwakhona ukuba zeziphi iinketho abavelisi abanazo, ukuba yonke into ihambelana njani kunye namawijethi, intshukumo kunye nefuthe lokuthintela, kwaye zeziphi izixhobo onokuzisebenzisa ukuyila nokuvavanya ngokupheleleyo.
Yintoni iphalethi yombala oguqukayo kwiMaterial Wena?
Ingcamango ephambili kukuba inkqubo ithatha umbala omnye womthombo (mhlawumbi ukusuka kwiphepha lodonga okanye umbala ochazwe ngumsebenzisi) kwaye uyiguqule ibe yisethi epheleleyo yemibala yetoni ehambelanayo yenkqubo yonke kunye nee -apps. Loo njini iyavelisa Iipaliti ezi-5 zeetoni ezinamaxabiso ali-13 inye (Iimpawu ezingama-65 zizonke), ukuze amacandelo oMathiriyeli afakwe kwimephu kwiindima zemibala ngokungaguquguqukiyo.
Le ndlela ibonelela abasebenzisi kunye nabaphuhlisi nge imbali yokwenziwa ngendlela efanayo kwaye zizityebi kuso nasiphi na isixhobo se-Android, esivumela ii-OEMs ukuba zivelise i-UI yazo ngaphandle kokwaphula ukuhambelana kwenkqubo yendalo okanye ukubeka esichengeni ukufikeleleka.
Indlela ukutsalwa kombala kunye nokwandiswa kusebenza ngayo
Ukusukela kwi-12 ye-Android, i-AOSP ibandakanye ukutsalwa kombala kunye nengqiqo yokwandisa eguqula iphepha lodonga okanye umbala wesiseko kwiipalethi zetoni. Ukuqinisekisa amava ahambelanayo, kuyacetyiswa ukuba usebenzise i ingqiqo efanayo ne-AOSP ngaphandle kohlengahlengiso, zombini kwi-UI yenkqubo nakwii-apps zomenzi.
Gqibezela ukuhamba ngamanyathelo ama-4
- Umsebenzisi utshintsha iphepha lodonga okanye umxholo kumkhethi we-OEM. Ukusuka kolu mqondiso, inkqubo ibonisa iinketho ezikhoyo zokuvelisa okanye zokusebenzisa umxholo. Umthombo wombala unokuzenzekela okanye ukhethwe..
- Umsebenzisi ukhetha phakathi kweendlela ezimbini: "Umxholo wesixhobo" (I-Android imisela umbala wembewu osebenzayo ngokuzenzekelayo) okanye "Iphepha lodonga elitsha kunye nomxholo" (Ingqiqo ye-AOSP ikhupha umbala ofanelekileyo womthombo kumfanekiso omtsha.)
- Ngombala wembewu okhethiweyo, i-AOSP iyayandisa ukuya Iiphalethi zetoni ezi-5 enamaxabiso ali-13 inye (i-accent 1–3, ingathathi hlangothi 1–2), isasaza iimpawu ezingama-65 ezilungele ukusetyenziswa kuyo yonke inkqubo.
- Inkqubo ye-UI kunye nee-apps zisebenzisa ezi mpawu zingama-65 rhoqo. UGoogle ucebisa ukuba iiOEMs zisebenzise iphalethi enye yesistim kunye neeapps zobunikazi ukuqinisa ukuqhubeka okubonakalayo.
Iimfuno zobugcisa kunye neepatches kwi-Android 12
Kwizixhobo ezisebenzisa i-Android 12L okanye ngaphezulu, umbala oguqukayo sele wakhelwe ngaphakathi. Ukuba usebenzisa i-Android 12, kuya kufuneka uquke iipetshi ezibonelela isiphelo ukuya ekupheleni logic yokutsalwa kunye nokwandiswa, kunye neempawu ezichazwe "njengeSinyanzeliso" kunye "neSindululo esiPhakamileyo" ukuqinisekisa ukuhambelana kweempawu ezingama-65 kunye nokuhambelana kwazo kunye ne-ikhosistim.
Ingqiqo iqala ngo ThemeOverlayController yeSystemUI kwaye isabela kutshintsho kwi WallpaperColors kwaziswa ngu WallpaperManejalaLe ndlela iqinisekisa ukuba xa umsebenzisi etshintsha imvelaphi, inkqubo ihlaziya umxholo ngokuqikelelwayo.
I-ThemePicker kunye nokuchaza imibala yakho nge-stub APK
Ukuba usebenzisa i-AOSP ThemePicker, icandelo lombala livela xa iimeko ezimbini zidibene: iflegi iflegi_monet = yinyaniso kwi-SystemUI kunye nenkcazelo yomqulu isiqu en gqithisela.xml. Le "stub" APK iqulethe ubuncinci bemithombo yokudwelisa imibala ekhoyo kunye namagama ayo, esebenza njengekhathalogu ye imibala esisiseko.
El isiqu kufuneka ibandakanye ifayile ye-XML equlethe uluhlu lwemiyanda kunye neentambo ezichazayo, kunye nombala osisiseko kunye nombala wesibini kwinqwaba nganye. Umzekelo:
<resources>
<array name="color_bundles">
<item>color1</item>
<item>color2</item>
<item>color3</item>
<item>color4</item>
</array>
<string name="bundle_name_color1">Blue</string>
<string name="bundle_name_color2">Red</string>
<string name="bundle_name_color3">Yellow</string>
<string name="bundle_name_color4">Green</string>
</resources>
Imibala inokuchazwa kwifayile enye okanye kwifayile yomthombo eyahlukileyo, kunye nababini umbala_okuqala_* y umbala_okwesibini_* kwinqwaba nganye. Omabini amaxabiso kufuneka ahambelane nombala ofanayo ukugcina ingqibelelo yekhathalogu.
<resources>
<color name="color_primary_color1">#0000FF</color>
<color name="color_secondary_color1">#0000FF</color>
<color name="color_primary_color2">#ff0000</color>
<color name="color_secondary_color2">#ff0000</color>
<color name="color_primary_color3">#ffff00</color>
<color name="color_secondary_color3">#ffff00</color>
<color name="color_primary_color4">#00ff00</color>
<color name="color_secondary_color4">#00ff00</color>
</resources>
Ukwenza amazwe ngamazwe, yongeza iinguqulelo kwi-res/values-xx ngamagama enqwaba nganye. Ngale ndlela, i-ThemePicker inokubonisa iseti esisiseko yemibala echazayo ehambelana nebrand yakho.
Inyathelo 1: Yila amava omxholo oluncedo
Umsebenzisi unokwenza ngendlela a umxholo okanye umkhethi wangasemvaUkuba ukhetha umkhethi wangemva, ukutsalwa kombala ongasemva kwenziwe ngokungagqibekanga, nangona unokwandisa iinketho (umzekelo, ikuvumela ukuba ukhethe kwiimbewu ezininzi ezicetywayo yi-algorithm).
Inyathelo lesi-2: Khupha umbala wemvelaphi
Ukukhutshwa kombala kubangelwa xa umsebenzisi ecwangcisa imvelaphi okanye emva komjikelo wamandla wesikrini. Ingqiqo ye-AOSP ithatha owona mbala ufanelekileyo kumfanekiso, ngaphandle kokuba udibana ne I-CAM16 chroma ubuncinane be-5 (ukuphepha iimbewu ezibuthuntu kakhulu). Ukusebenza ngeCAM16 ungasebenzisa izinto eziluncedo ezifana neCam#fromInt okanye Cam#getInt.
Ukuba isixhobo sakho asikuxhasi ukutsalwa okuguquguqukayo, ungakhetha ipalethi engaguquguqukiyo: khubaza iflegi_monet kwaye ibonelela ngesitshintshi somxholo esingagqibekanga ukuze umsebenzisi usenazo iinketho zokwenza ngokwezifiso.
Inyathelo lesi-3: Yandisa ukuya kuma-65 eempawu
Ngembewu esebenzayo, i-Android ivelisa iipalethi ezi-5: i-accent1, i-accent2, i-accent3, i-intuth1 kunye ne-2, ngalinye linamabala ali-13 ahambelana nokukhanya. Imithetho ye-CAM16 iqinisekisa ukuhambelana: umzekelo, i-accent1 igcina i-hue yembewu kunye ne-chroma 40 kwii-indices 0, 10, 50, kunye ne-100, kunye ne-48 kwenye indawo; i-accent2 isebenzisa ichroma 16; i-accent3 isebenzisa ichroma 32 ngokujikeleziswa kwe ithoni +60 °; i neutral1 isebenzisa ichroma 4; i neutral2 isebenzisa ichroma 8.
Ukuqinisekisa ukwandiswa, i-CTS ibandakanya ukukhanya kunye novavanyo lwe-hue olunokuthi lubhengezwe qaphela SystemPaletteNgale ndlela, unokuqinisekisa ukuba ukuphunyezwa kuyayihlonipha imida kunye neemephu ezichazwe liqonga.
Inyathelo 4: Sebenzisa kwii-apps kunye ne-UI yenkqubo
Nje ukuba imibala eguquguqukayo iqwalaselwe, ii-apps zisebenzisa iimpawu ngokusebenzisa iMaterial Components kulandela izikhokelo zoYilo lweMaterial 3. UGoogle ucebisa ukudibanisa imibala eguqukayo kuwo wonke amava (inkqubo kunye nee-apps zobunikazi) ukuqinisa isazisi sesixhobo ngaphandle kokuphulukana nokuhambelana ne-ecosystem.
I-Android 13+: Izitayile zoMxholo kunye noBuntu beJSON
Ukususela kwi-Android 13, intsimi android.theme.customization.accent_color ayifumaneki kwaye ifike android.theme.customization.theme_style ukwahlula imibala eyahlukileyo. Izimbo ezine zixhaswa kwi-AOSP: TONAL_SPOT (esemgangathweni ukusukela kwi-Android 12), VIBRANT (i-accent 2 kunye ne-3 efanayo ne-accent 1), isimbo esicacileyo (kakhulu chromatic) kunye SPRITZ (desaturated phantse greyscale).
Bathunyelwa ngaphakathi Iisetingi.Khusela.THEME_CUSTOMIZATION_OVERLAY_PACKAGES nge-JSON efana nale:
{ "android.theme.customization.system_palette":"B1611C", "android.theme.customization.theme_style":"EXPRESSIVE" }
Kwi-Android 12 nangaphambili, ifomathi ikwabandakanya i-accent: kunikezelwe imbewu esebenzayo, kwaye inkqubo iyanda ngokuthe ngqo kwiimpawu ze-65, ukutsiba ukutsalwa kwemvelaphi. Umzekelo uya kuba: { «android.theme.customization.system_palette»:»746BC1″, «android.theme.customization.accent_color»:»746BC1″}.
Uluhlu oluvunyelweyo kunye nomqondiso kumaqela esithathu
Ukuze abantu besithathu bachonge ngokuthembekileyo ukuba isixhobo sakho sisebenza ngokuchanekileyo iphalethi yombala oguqukayo, uGoogle ugcina uluhlu lwemvume olunekhowudi. Kuya kufuneka uvule itikiti kwaye ungenise eyakho Yakha.UMenziOku kungundoqo kuba uninzi lweeapps zisebenzisa izixhobo ze-Android ukupeyinta ngemibala eguqukayo.
Ukunyakaza okuhambelanayo kunye nempendulo ye-tactile
I-Android 12 yaziswa a ukolula iliso xa ufikelela kwimida yoluhlu. Kwizixhobo ezine isHighEndGfx() Inyaniso, ukolula akukho mgca; kwihardware engenamandla kangako, yenza lula kumgca wolula ukunciphisa umthwalo.
Ukuba usebenzisa iimbono zesiko, hlaziya amathala eencwadi: androidx.recyclerview:recyclerview 1.3.0-alpha01, androidx.core:core 1.7.0-alpha01 (I-NestScrollView kunye ne-EdgeEffectCompat) kunye androidx.viewpager:viewpager 1.1-alpha01. Kwakhona, nge-EdgeEffect: inqanda intsebenziswano kunye nomxholo ngexesha lokwelula, ivumela ukubamba i-animation ukuphatha umgama (EdgeEffectCompat.getDistance()) kunye nokusetyenziswa onPullDistance () yoguqulo olugudileyo lokwelula-ukuya-ukuskrola, ukubeka phambili ukolula ngaphezulu kweemboniselo ezibekwe kwindlwane.
Ngokuphathelele ukusebenza ripple (ripple) Xa ucinezelwe, i-Android 12 iyayigudisa ukuze ifumane impendulo echuliweyo. Ayifuni naluphi na uhlanganiso olukhethekileyo, kodwa luluvo olulungileyo ukuvavanya kwizixhobo zakho ukunqanda ubuhle okanye ukuhlehla kokusebenza.
IWidgets: iiAPI ezintsha kunye nohlaziyo lwethu
Iwijethi zisabalulekile kwi-Android. Inkqubo yakho kufuneka ibaxhase ngokufanelekileyo. iiparamitha zoyilo (ubukhulu, iikona, njl.njl.) kwaye uvumele umsebenzisi ukuba ahlengahlengise ngokungenamthungo kwaye aphinde ahlengahlengise, kunye nokuveza ubungakanani obufanelekileyo kunye nerediya ngee-APIs.
Thatha ithuba leempawu ezintsha ze-API ukuze wenze iwijethi ye-app yakho ibe yesimanjemanje. Phonononga uluhlu lwemisebenzi olucetyiswayo lweqonga kwaye ubeke phambili oko kuya kuba nefuthe elikhulu kwishishini lakho. ukusebenziseka kunye nokuhambelana okubonakalayo.
IMaphu yendima yoMbala kuMalunga oMathiriyeli
Uyilo lweMaterial 3 luhlaziya iimpawu zomxholo ukuze usebenze ngeendima zemibala. Kumxholo okhanyayo onombala oguqukayo, colorPrimary iqhele ukwenziwa imephu kwindlela_accent1_600 kunye umbalaOnPrimary kwi-system_accent1_0; ebumnyameni, ukuya kwi-system_accent1_200 kunye ne-system_accent1_800, ngokulandelelanayo. Eyesibini ilandela ingqiqo efanayo nge system_accent2_*. Imvelaphi kunye nomphezulu ziphuma kwi ngathathi hlangothi1, kwaye izicatshulwa ezingasemva/umphezulu zithatyathwe kwiithowuni ezichaseneyo.
Ngokufanayo, iimpawu zombuso zaziswa njenge colorPrimaryStateContent o colorOnSurfaceVariantStateLayer, izalathisi ezijoliswe kwipalethi ezithile (umzekelo, inkqubo_accent1_700 yomxholo wobume obukhanyayo, okanye inkqubo_neutral2_200 yokwahluka okumnyama). Le maphu ineenkcukacha iqinisekisa ulungelelwano kuzo zonke iindawo, iileya, kunye nochasaniso.
Ii-FAQ eziphambili
Ngaba utsalo lusebenza ngokuzenzekelayo xa imvelaphi itshintsha? Ewe. Ngeepatches ze-12 ze-Android, ukutsalwa kombala kwenziwa ngokungagqibekanga nge-ThemeOverlayController, emamela kwiColorsChanged kwaye iphendule Umphathi weWallpaper#onWallpaperColorsTified.
Kuthekani ngeepopayi okanye imvelaphi yevidiyo? Utsalo lusetyenziswa kwakhona emva kokucima isikrini kunye nokuvula, xa injini yangasemva ikwazisa ngotshintsho lombala (WallpaperEngine#notifyColorsChanged). Ngoko ke, okokugqibela WallpaperColors Iyadityaniswa xa isikrini sivulwa kwakhona.
Ndingabonisa iimbewu ezininzi kwisikhethi? Ewe. Sebenzisa I-ColorScheme#fumana iSeedColors(Imibala yeWallpaper) ukunika umsebenzisi iindlela ezizezinye zowona mbala uphezulu wefrikhwensi. Olu khetho luphucula ulungelelwaniso ngaphandle kokutenxa kwingqiqo ye-AOSP.
Kuthekani ngemifanekiso yomfanekiso? Aziyonxalenye yeepatches ezikhankanywe ngasentla kwaye azifumaneki kwi-Android 12 njengento eqhelekileyo. Sukuzama ukuthatha ubukho babo ukuba azikho kwisakhiwo sakho.
Ndingasebenzisa usetyenziso lweWallpaper kaGoogle ngayo yonke le nto? Ewe. Phumeza la manyathelo angasentla kwaye uthembele kwiiklasi ezifana WallpaperPicker2 y Umqalisi3Umboniso ongasemva ungaphakathi WallpaperSectionController, kwaye GridCustomizationsProvider iveza imboniso nge ContentProvider ukuba "iWallpaper & Style" app idla.
Ukufikeleleka kunye neMathiriyeli Wena uyila izixhobo
Izinto eziphathekayo Uyilwe ngogxininiso olubandakanyayo: iipalethi ezenziweyo zigcina Uchasaniso olwaneleyo ukuqinisekisa ukufaneleka kokubhaliweyo kunye nezinto ze-UI, zombini kwindawo ekhanyayo kunye nemnyama. Ukongeza, umsebenzisi unokukhetha amanqanaba okuthelekisa (aqhelekileyo, aphakathi, naphezulu) ukulungisa amava kwiimfuno zabo.
Kubaqulunqi, iplagin Material Theme Umakhi for Figma Ikuvumela ukuba uvelise kwaye ujonge iipalethi ezisekwe kumbala webhrendi okanye umxholo, ukukhanya kwangaphambili / iindawo ezimnyama, kwaye ujonge umahluko. Yindlela ekhawulezayo yokulinga ngaphandle kokuphulukana nesazisi sophawu.
Ukuba sele unayo ipalethi yoshishino (umzekelo, uhlaza olusisiseko, oluntsundu olukwinqanaba eliphezulu, oluluhlaza okwesibhakabhaka), ungagalela loo mibala kwiSakhi somxholo ukuvelisa ngokuzenzekelayo izikali zethoni nge ukuchasana okufikelelekayoOku kukhawuleza intsebenziswano phakathi koyilo kunye nophuhliso kunye nokunciphisa imijikelo yohlengahlengiso.
Ukuhambelana komenzi kunye nendlela yokuvavanya ngaphandle kwefowuni ephathwayo
Umbala oDynamic (owaziwa ngaphakathi njenge Imali) yayingeyonxalenye ye-AOSP ekukhutshweni kokuqala kwe-Android 12, kodwa i-Google iqinisekisile ukufika kwayo kwimigangatho yabavelisi abakhulu abafana I-Samsung (I-UI enye), i-OnePlus (i-OxygenOS), i-OPPO (i-ColorOS), i-Vivo (i-OriginOS), i-realme kunye ne-Xiaomi (MIUI), phakathi kwabanye.
Ukuba awunaso isixhobo esixhasayo esiluncedo, ungasebenzisa isixhobo soMakhi weMxholo weMxholo kwisikhangeli sakho vavanya imixholo eguqukayo: Imvelaphi eyahlukileyo okanye ulayishe owakho umfanekiso kwaye ubone ukuba iyichaphazela njani imibala yeapps zakho.
Ukwenziwa ngokwezifiso okukwinqanaba eliphambili: indlela yokuziphatha enemaleko kunye nee-apps zomntu wesithathu
Ukuphunyezwa kwe-OEM kunokwazisa ama-nuances. Umzekelo, abanye abasebenzisi baye baqaphela kwi-UI enye ukuba xa usebenzisa ii-apps ezitshintsha ngokuzenzekelayo imvelaphi (efana neTapet), inkqubo ayifuni. ihlaziya ipalethi ude uvale ngesandla kwaye uphinde uvule ipalette kwiiSetingi. Kwezi meko, idla ngokuba ngenxa yothintelo okanye izigqibo zomaleko: luluvo olulungileyo ukungqinisisa ukuba kulindelekile ukuziphatha okanye ibug ethile.
Ukuba ufuna ukwenza ngokwezifiso ngakumbi, usetyenziso lokuzenzela NjengoRepainter, zikuvumela ukuba ulungelelanise kakuhle iipalethi zesistim. Basebenza kakuhle ngeengcambu, kodwa kwezinye izixhobo basebenza ngaphandle kweengcambu usebenzisa i-ADB engenazingcingo (efana neShizuku). Unokukhetha iphalethi esetyenziswa zii-apps ezixhasa iMaterial Wena, uvelise iipalethi ukusuka kwiphepha lodonga kunye nokutshixa isikrini, okanye nokuba khetha umbala ngesandla.
Inguqulelo yasimahla yeRepainter idala isitayile esinye; i-app ibandakanya ukuya kuthi ga iindlela ezintandathu Ifumaneka njengolingo lweentsuku ezi-3. Emva koko, kukho umrhumo wenyanga okanye intlawulo yexesha elinye. Ifuna i-Android 12+, kwaye utshintsho luhlala luqhubeka nasemva kokukhupha okanye ukuqala kwakhona.
Iingcebiso zoyilo olusebenzayo kunye neMaterial You
Ngokumalunga noYilo lweMaterial (2014), iMathiriyeli uyenza lula: izithunzi ezincinci, iifonti ezicocekileyo kunye iimilo ezingqukuvaUGoogle uhlaziye iwebhusayithi yeMaterial enezikhokelo ezicacileyo zamacandelo, ubungakanani, imibala, kunye namatyala okusebenzisa ukuze ukwazi ukulandela ezona ndlela zilungileyo kwaye ulahleke.
Njengokuqhuba komsebenzi, qala ngokwenza i iphalethi yombala (I-Theme Umakhi lukhetho olukhulu), chaza izitayile zeteksti ngokufundeka kwengqondo, kwaye uthembele kwiiKits ezisemthethweni zoYilo lweFigma. Luluvo olulungileyo ukulungiselela itemplate ebonwayo kunye nezitayile zokuchwetheza ezisetyenzisiweyo kunye nobudlelwane babo nombala kunye nemiphezulu ukuququzelela uphononongo.
Xa uphumeza, sebenzisa i Izinto eziphathekayo kwaye uhloniphe amacandelo aphambili amaxwebhu (Ujongo jikelele, iiNkcazo, iziKhokelo). Icandelo lokuFikelela lisavela kwamanye amaphepha, kodwa iiNkcazo kunye neziKhokelo zibonelela ngemilinganiselo, ukusetyenziswa okuchanekileyo, kunye nemida, ukuphepha ukumangalisa kwimveliso.
Ukuphuhlisa usetyenziso ngeMathiriyeli awuntsonkothanga ukuba uyasazi isitaki, kodwa kuyafuna ulwazi oluphambili ukufumana okuninzi kuyo. Ukuba ufuna uncedo lobuchwephesha, kukho amaqela akhethekileyo anokukunceda ngenkcazo, uyilo, kunye nokuphunyezwa, ukuphendula imibuzo kunye nokulungelelanisa uhlahlo lwabiwo-mali lwakho.
Isixhobo Uhlanganisa ukwenza ngokwezifiso, ukufikeleleka, kunye nokungaguquguquki kobugcisa kwiphakheji enye: ukusuka kwimbewu yombala omnye, i-Android ivelisa iimpawu ezingama-65 ezilungele iindima zeMpatho, ukuziqhelanisa nokukhanya / ubumnyama kunye nokwahlukileyo. izimbo zomxholo (TONAL_SPOT, VIBRANT, EXPRESSIVE, SPRITZ), kwaye ithatha unonophelo lweenkcukacha ezinje ngokuskrola kakhulu ukolula, ripple, okanye widgets.
NgoMxholo woMxholo, i-JSON engaphezulu, izinti ze-APK zemibala esisiseko, uvavanyo lwe-CTS, kunye nezixhobo ezinje ngoMakhi woMxholo, unayo yonke into oyifunayo ukuyila amava akhazimlisiweyo ahlonipha ibhrendi yakho kwaye afaneleke ngokungenamthungo kwi-ecosystem. Yabelana ngolwazi kwaye abasebenzisi abaninzi baya kufunda malunga nesi sihloko..