Android ima težavo z emoji in Google uporablja dvostranski pristop, da jo reši s sistemskimi pisavami, ki jih je mogoče posodobiti, in EmojiCompat.
Ljubite jih ❤ ali jih sovražite 🤬, emojiji so dandanes postali osnovna oblika izražanja. Ti majhni madeži besedam dodajo čustva in namere, brez njih pa bi bil pogovor po internetu nepopoln. So velika stvar celo za medosebne pogovore - zakaj bi izgubljali čas in govorili veliko besedo, ko emodžiji prevarajo? Zato ne preseneča, da je Google pogledal Android in ugotovil, da ima težave z emodžiji in z njimi Android 12, to poskuša popraviti.
Android in njegova težava z emoji
Emojiji so velika stvar. Uporaba emojijev je na najvišji ravni vseh časov in uporabniki nekaterih aplikacij vsak dan pošljejo milijarde emojijev. Hranjenje in sledenje tem spremembam je glavno Standard Unicode, in prejema pogoste posodobitve, ki dodajajo nove emojije. Ti novi emojiji se osredotočajo na nove primere uporabe, trende in celo različice, da postanejo boljši predstavniki raznolikosti in vključenosti.
V svoji Predstavitev Android Dev Summit 2021, Google pravi, da 96 % uporabnikov Androida ne vidi najnovejših emojijev, v popolnem nasprotju s 16 % uporabnikov iOS, ki ne morejo videti najnovejših emojijev. Najboljših 100 emojijev predstavlja ~82 % vseh deljenih emojijev. Toda pri 20 % teh deljenj pošiljatelj pošlje emoji, prejemnik pa vidi le "tofu" ali zlomljeno sliko, označeno s poljem z X v njem, kar pomeni, da njihov telefonski sistem nima ustreznih čustvenih simbolov zaslon.
Težave se ne končajo pri tofujih. V določenih situacijah v zvezi z novejšimi emodžiji in starejšimi različicami Androida je prikazani emoji na koncu formulacijska predstavitev, ki od uporabnikov zahteva nekaj mentalne gimnastike, da razumejo, kaj se v resnici dogaja na.
Pred Androidom 12 smo morali vsakič, ko je Unicode dobil nove emojije, počakati na nadgradnjo OS Android na doseči naše telefone, da zagotovimo podporo za emoji, preden jih dejansko lahko naredimo za del našega interneta žargon. In vsi vemo, kako slaba je dejansko situacija s posodobitvijo Androida. Da, izboljšalo se je. Če pa nimate vodilnega, obstaja verjetnost, da potrebujete še precej mesecev, preden najnovejša posodobitev doseže vašo napravo v stabilni izdaji. Obstaja velika verjetnost, da je bilo v tem časovnem zamiku dodanih več novih emodžijev, zaradi česar ne boste več obveščeni o trenutnem jeziku.
Jasno je, da tukaj obstaja problem in da je potrebna rešitev. Google si je zadal cilj, da bo vsak emoji na voljo vsem uporabnikom Androida v vseh aplikacijah, in za dosego tega cilja uporablja dvostranski pristop.
Rešitev 1 od 2: sistemske pisave, ki jih je mogoče posodobiti (Android 12 in novejši)
Začenši z Androidom S (Android 12) je Google predstavil sistemske pisave, ki jih je mogoče posodobiti, in prva pisava, ki jo bodo posodobili, je pisava emoji.
Pogovarjali smo se o Sistemske pisave, ki jih je mogoče posodobiti v preteklosti, pravzaprav pred skoraj enim letom. V sistemu Android 11 in starejših so vse pisave v sistemu Android shranjene v sistemski particiji, natančneje pod /system/fonts imenik. Zlasti emojiji so prisotni v datoteki, imenovani NotoColorEmoji.ttf. Sistemska particija je samo za branje in posodobitev katere koli datoteke znotraj particije zahteva sistemsko posodobitev, medtem ko particija ni nameščena. Torej so edini načini, da dobite nove pisave in nove emojije, počakati na uradno OTA posodobitev oz namestite sami neuradno preko roota.
Z Androidom 12 in sistemskimi pisavami, ki jih je mogoče posodobiti, je datoteke s pisavami so shranjene pri /data/fonts/files, in je na voljo za branje za vse aplikacije, vendar ga lahko piše samo sistemski_strežnik in v. Na ta način lahko Google iztisne posodobljene datoteke s pisavami, aplikacije pa jih lahko preberejo za najnovejše informacije, ne glede na to, kdaj je bila v telefonu zadnja posodobitev sistema Android. Kot razvijalec aplikacij in celo kot uporabnik vam nikoli več ni treba razmišljati o podpori za emoji v napravi Android 12+.
Rešitev 2 od 2: EmojiCompat z AppCompat 1.4 (Android 4.4. do Android 11)
Android 12 je bil predstavljen pred nekaj tedni v stabilni veji in trajalo bo kar nekaj časa, preden boste opazili širjenje v ekosistemu Android. Torej potrebujete rešitev, ki deluje v sistemu Android 11 in starejših. Ta rešitev je Podporna knjižnica EmojiCompat.
AppCompat 1.4 vključuje EmojiCompat, kar pomeni, da bodo vse aplikacije, ki uporabljajo AppCompat 1.4, samodejno podpirale sodobne emojije. Kot razvijalec aplikacije morate samo integrirati/povišati svojo različico AppCompat na 1.4 in uporabnikom boste prikazali posodobljene emojije tudi v sistemu Android 4.4, ne da bi se kdorkoli še dodatno trudil.
Vendar obstaja majhen ulov. Ulov je v tem, da je to sprememba, usmerjena v jedro GMS, ki za delovanje zahteva storitve Google Play. To ni sprememba AOSP za starejše različice Androida na način, kot je prva rešitev, in to tudi v resnici ne more biti zaradi načina delovanja časa in fizike.
Pravilnik o emodžijih Android za Android 12
Poleg teh poudarkov je Google dodal tudi pravilnik o emodžijih za Android za aplikacije, ki se izvajajo v sistemu Android 12 in novejšem. Te aplikacije morajo biti skladne z najnovejšo različico Unicode v 4 mesecih po javni dostopnosti, in to morajo storiti na enega od teh treh načinov:
- Če je AppCompat že v uporabi, se prepričajte, da so emoji omogočeni.
- Uporabite obstoječo knjižnico EmojiCompat na vseh površinah v aplikaciji. To bi moralo delovati s pogledi po meri, ki neposredno uporabljajo StaticLayout.
- Posodobite upravljanje in pisavo/slike za emoji na podlagi najnovejše različice Unicode.
Če prav razumem, je zadnja možnost le zahteva od razvijalcev, da združijo emojije v svojo aplikacijo. Kakor koli že, razvijalci morajo zagotoviti izpolnjevanje teh zahtev pred februarjem 2022.
Google ima vire za razvijalce aplikacij, s katerimi lahko odpravijo svoje težave z emoji, in priporočamo, da jih preverite:
- Srečanje razvijalcev za Android 2021: prikaz VSEH emojijev v vaši aplikaciji (in zakaj je to pomembno)
- Dokumentacija za razvijalce za Android: Podpora za sodobne emojije
- Pravilnik programa za razvijalce: obvestilo 27. oktober 2021 – Pravilnik o emodžijih za Android
Android 12L in Unicode 14
To je bil Android 12L začela včeraj prihaja z Podpora za Unicode 14 (prek 9to5Google). Unicode 14.0 vključuje naslednje nove emodžije:
- Topi se obraz
- Obraz z odprtimi očmi in dlanjo čez usta
- Obraz s kukajočim očesom
- Pozdrav obrazu
- Obraz s pikčasto črto
- Obraz z diagonalnimi usti
- Obraz, ki zadržuje solze
- Desna roka
- Leva roka
- Dlana navzdol
- Dlan navzgor
- Roka s prekrižanim kazalcem in palcem
- Kazalo, ki kaže na gledalca
- Srčne roke
- Grizenje ustnic
- Oseba s krono
- Noseč moški
- Noseča oseba
- Troll
- Korale
- Lotus
- Prazno gnezdo
- Gnezdo z jajci
- fižol
- Nalivanje tekočine
- Jar
- Tobogan za igrišče
- kolo
- Obročna boja
- Hamsa
- Zrcalna krogla
- Prazna baterija
- bergla
- Rentgen
- Mehurčki
- Izkaznica
- Debel znak enačaja
Poleg tega izdaja vključuje različice in kožne tone teh novih emojijev, s čimer je skupaj 112 novih dizajnov.
Skratka, težave z emodžiji Androida bi morale biti kmalu stvar preteklosti.