Šonedēļ es beidzot sāku pievienot tumšā režīma atbalstu Reps & Sets, iPhone kultūrisma lietotne, ko izstrādāju kā sānu grūstīšanās. Tas ir gandrīz gads pēc Apple pirmo reizi par šo funkciju paziņoja savā Vispasaules izstrādātāju konferencē.
Kas man tik ilgi prasīja? Tumšā režīma atbalstīšana nav tik vienkārša, kā šķiet. Ar to ir cīnījušies ne tikai tādi indie izstrādātāji kā es. WhatsApp tikai nesen pievienots tumšā režīma atbalsts, un Facebook ir vēl beta testēšana.
Tātad, ja jūs gaidāt, kad jūsu iecienītākā lietotne pārslēgsies uz tumšo pusi, lūk, kāpēc tas var aizņemt tik ilgu laiku.
Tumšais režīms: tas nav tik vienkārši kā izslēgt gaismu
Kā izstrādātājam, pirmo reizi iespējojot tumšo režīmu Xcode, tas neizskatās skaisti. (Skatiet ekrānuzņēmumus zemāk.) Jūsu lietotne izskatās kā Frankenšteina briesmonis, kas salāpīts kopā ar nepāra un satriecošu gaišo un tumšo elementu kombināciju.
Problēma ir tā, ka, lai gan dažas lietotāja saskarnes daļas, piemēram, fons, automātiski pārslēdzas uz tumšu, citas to nedara. Daži teksti kļūst nelasāmi, jo ir melni melni. Galvenes ar baltu fonu izskatās pārāk spilgtas un kaitinošas. Ilustrācijas un ikonas, kas paredzētas gaišam fonam, izskatās briesmīgi.
Jā, ja lietotne būtu izveidota, izmantojot Apple noklusējuma pogas un stilus, varbūt tā nebūtu izskatījusies tik slikti. Bet patiesībā dzīve nekad nav tik vienkārša. Pat Apple iebūvētās lietotnes mūsdienās bieži novirzās no noklusējuma lietotāja interfeisa elementiem.
Kad es pirmo reizi ieraudzīju, kāda putra izskatījās mana lietotne tumšajā režīmā, mana sirds sažņaudzās. Reps & Sets ir liela un sarežģīta lietotne ar daudziem dažādiem uzskatiem (izstrādātāju žargons dažādiem ekrāna dizainiem). Es zināju, ka visu to atjaunināšana prasīs milzīgu darbu. Katram skatam būtu rūpīgi jāapsver dizains, lai pārliecinātos, ka visi elementi izskatījās labi.
To vēl vairāk sarežģīja fakts, ka mana lietotne nav pavasara vista. Tas sākotnēji tika izstrādāts pirms deviņiem gadiem operētājsistēmai iOS 6. Kopš tā laika daudz kas ir mainījies, tāpēc tagad ir daudz mantotā koda (izstrādātāja eifēmisms attiecībā uz crud). Tā rezultātā, ikreiz pieskaroties kodam, parasti tas ir jāatjaunina.
Tumšais režīms pārvērš aktīvus par saistībām
Tomēr skatu atjaunināšana ir tikai problēmu sākums, mēģinot pievienot tumšā režīma atbalstu. Lielākajā daļā lietotņu ir arī tādi līdzekļi kā ikonas, logotipi un ilustrācijas, kuras būs jāmaina.
Apple palīdz šajā jautājumā, ļaujot jums uzklājiet citu nokrāsu saviem līdzekļiem tumšajā režīmā. Vienkāršām, plakanām ikonām šī pieeja darbojas labi. Bet tas nepalīdz ar animācijām vai daudzkrāsainu grafiku.
Jūs varētu būt pārsteigts par to, cik daudz līdzekļu ir dažām lietotnēm. Piemēram, programmā Reps & Sets man bija jālabo vairāk nekā 100 ikonas un 300 ilustrācijas. Šis uzdevums vien man prasīja 40 stundas pamatīga darba.
Neaizmirstiet par gaismas režīmu
Vēl viens sarežģījums ir tas, ka visām izmaiņām, ko veicat, lai atbalstītu tumšo režīmu, ir jāstrādā arī gaišajā režīmā. Tātad tagad jūs veidojat divas lietotāja saskarnes, nevis vienu.
Pat tad, kad esat pabeidzis tumšā režīma ieviešanu, darbs ar to nebeidzas. Tā ir pastāvīga apņemšanās. Turpmāk katru reizi, kad izlaidīsit atjauninājumu, tas būs jāpārbauda tumšajā režīmā, kā arī gaišajā režīmā. Un tas ir laikietilpīgs darbs. Iepriekš es pārbaudīju Reps & Sets astoņās dažādās OS un aparatūras kombinācijās. Tumšais režīms to dubulto līdz 16 versijām.
Tumšais režīms var nebūt iekļauts zīmolā
Pirms sākat izmantot tumšo režīmu, ir jāapsver būtiskāka problēma: zīmola identitāte.
Slavens zīmols, piemēram, Facebook, ir nenovērtējams aktīvs, kas prasa rūpīgu pārvaldību, lai saglabātu tā integritāti. Tās zīmola identitātei jābūt konsekventai visās platformās, tāpēc tā vienmēr ir uzreiz atpazīstama. Tumšais režīms to sarežģī. Ne visi logotipi un krāsu shēmas izskatās labi melnā krāsā. Lai to novērstu, iespējams, būs jāpārskata zīmola vadlīnijas.
Pat manai vecajai lietotnei tas prasīja pārdomas. Piemēram, zīmola Reps & Sets krāsa ir tumši zila. Tas lieliski darbojas uz balta fona, bet tas nav salasāms uz melna. Tāpēc man bija jāpievieno gaiši zila zīmola krāsu palete tumšajam režīmam.
Man tas ir viegli izdarāms, jo esmu viena cilvēka grupa. Bet tādam lielam uzņēmumam kā Facebook, kurā ir iesaistītas daudzas ieinteresētās personas, zīmola vadlīniju maiņa parasti ir sarežģīts, laikietilpīgs process. Tam varētu būt sekas, kas pārsniedz lietotni - piemēram, vietnes dizains vai izkārtņu un izstāžu stendu izskats.
Nav brīnums, ka tik daudzas lielas organizācijas vienkārši nolēma ignorēt tumšo režīmu.
Es domāju, ka tumšajai pusei vajadzētu būt vilinošākam
Reps & Sets ir bezmaksas lietotne. Pamata lejupielāde ir bezmaksas, un pēc tam ir pieejama pirkšanas iespēja lietotnē premium abonementam, lai piekļūtu papildu funkcijām. Bet nav iespējams ierobežot tumšā režīma atbalstu tikai augstākās klases lietotājiem. Tātad visi lietotāji gūst labumu no visa šī darba bez maksas.
No tīri komerciāla viedokļa man nebija stimula ieviest tumšo režīmu. Bet es tajā ne tikai naudas dēļ. Ja es būtu, es būtu padevies pirms gadiem. Iemesls, kāpēc es izvēlējos to darīt, bija tāpēc, ka man šķita forši un es zināju, ka tas izskatīsies labi. Turklāt es pats izmantoju lietotni un izmantoju tumšo režīmu. Bija satriecoši turpināt Reps & Sets palaišanu un tikt bombardētam ar gaismu.
Tāpēc es izvēlējos darboties bezgalīgos vakaros un nedēļas nogalēs, pārzīmējot simtiem aktīvu. Es to darīju mīlestības, nevis naudas dēļ. Un mīlestība nav valūta, ko labi saprot lieli megakorpusi. Galu galā es domāju, ka tāpēc lielie uzņēmumi ar daudz lielākiem resursiem, nekā es jebkad varēju sapņot, tumšā režīma atbalstam prasa vēl ilgāku laiku nekā es.