Android má problém s emotikony a Google k jeho vyřešení používá dvoustranný přístup pomocí Updateable System Fonts a EmojiCompat.
Miluj je ❤ nebo je nenáviď 🤬, emotikony se v dnešní době staly základní formou vyjádření. Tyto malé malé kuličky dodávají slovům emoce a záměr a konverzace na internetu by bez nich byla neúplná. Jsou velkým problémem i pro mezilidskou konverzaci – proč ztrácet čas říkat hodně slov, když emotikony dělají trik? Není tedy žádným překvapením, že se Google podíval na Android a zjistil, že má problém s emotikony a Android 12, snaží se to opravit.
Android a jeho problém s emotikony
Emoji jsou velká věc. Využití emotikonů je na historickém maximu a uživatelé některých aplikací posílají každý den miliardy emodži. Krmení a udržování kroku s těmito změnami je Standard Unicodea dostává časté aktualizace, které přidávají nové emotikony. Tyto nové emotikony se soustředí na nové případy použití, trendy a dokonce i variace, aby byly lepšími představiteli rozmanitosti a začlenění.
Ve svém Prezentace Android Dev Summit 2021Google říká, že 96 % uživatelů Androidu nevidí nejnovější emotikony, v ostrém kontrastu s 16 % uživatelů iOS, kteří nevidí nejnovější emotikony. 100 nejlepších emotikonů tvoří ~82 % z celkového počtu emotikonů. U 20 % těchto sdílení však odesílatel odešle emotikony, ale příjemce vidí pouze „tofu“ nebo rozbité obrázek označený rámečkem s X, což znamená, že jejich telefonní systém nemá relevantní emotikony Zobrazit.
Tofusem problémy nekončí. V určitých situacích týkajících se novějších emodži a starších verzí Androidu zobrazené emotikony nakonec zůstanou vzorová reprezentace, která vyžaduje, aby uživatelé provedli nějakou mentální gymnastiku, aby pochopili, co se skutečně děje na.
Před Androidem 12, kdykoli Unicode dostane nové emotikony, museli jsme počkat na upgrade operačního systému Android na dosáhněte našich telefonů, abyste získali podporu pro emotikony, než je skutečně uděláme součástí našeho internetu žargon. A všichni víme, jak špatná je situace s aktualizacemi Androidu. Ano, zlepšilo se to. Pokud ale nemáte vlajkovou loď, je pravděpodobné, že vám stále trvá pěkných pár měsíců, než se nejnovější aktualizace dostane do vašeho zařízení ve stabilní verzi. Je velká šance, že během této časové prodlevy bylo přidáno více nových emotikonů, které vás udrží mimo smyčku aktuálního žargonu.
Je jasné, že tady je problém a musí existovat řešení. Google si stanovil za cíl zpřístupnit každé emotikony všem uživatelům Androidu ve všech aplikacích a k dosažení tohoto cíle používá dvojí přístup.
Řešení 1 ze 2: Aktualizovatelná systémová písma (Android 12 a vyšší)
Počínaje Androidem S (Android 12) Google zavedl aktualizovatelná systémová písma a první písmo, které bude aktualizovat, je písmo emoji.
Mluvili jsme o Aktualizovatelná systémová písma v minulosti, vlastně skoro před rokem. V systému Android 11 a nižším jsou všechna písma v systému Android uložena v systémovém oddílu a konkrétněji pod /system/fonts adresář. Zejména emotikony jsou přítomny v souboru s názvem NotoColorEmoji.ttf. Systémový oddíl je pouze pro čtení a aktualizace jakéhokoli souboru v oddílu vyžaduje aktualizaci systému, když oddíl není připojen. Jedinými způsoby, jak získat nové fonty a nové emoji, je tedy počkat na oficiální OTA aktualizaci resp nainstalujte si to sami neoficiálně přes root.
S Androidem 12 a aktualizovatelnými systémovými písmy, soubory písem jsou uloženy na /data/fonts/filesa je k dispozici ke čtení pro všechny aplikace, ale lze do něj zapisovat pouze pomocí systémový_server a init. Tímto způsobem může Google vytlačit aktualizované soubory písem a aplikace v nich mohou číst nejaktuálnější informace bez ohledu na to, kdy byla v telefonu poslední aktualizace systému Android. Jako vývojář aplikací a dokonce i jako uživatel už nikdy nebudete muset přemýšlet o podpoře emotikonů na zařízení se systémem Android 12+.
Řešení 2 ze 2: EmojiCompat s AppCompat 1.4 (Android 4.4. až Android 11)
Android 12 byl právě spuštěn před několika týdny ve stabilní větvi a bude chvíli trvat, než zaznamenáte rozšíření napříč ekosystémem Android. Potřebujete tedy řešení, které funguje na Androidu 11 a nižším. Tím řešením je Knihovna podpory EmojiCompat.
AppCompat 1.4 obsahuje EmojiCompat, což znamená, že všechny aplikace používající AppCompat 1.4 budou automaticky podporovat moderní emotikony. Jako vývojář aplikací stačí integrovat/překopat svou verzi AppCompat na 1.4 a budete uživatelům zobrazovat aktualizované emotikony i na Androidu 4.4, aniž byste museli vynakládat další úsilí.
Má to však malý háček. Háček je v tom, že se jedná o změnu orientovanou na jádro GMS, která vyžaduje, aby služby Google Play fungovaly. Nejedná se o změnu AOSP pro starší verze Androidu tak, jak je tomu u prvního řešení, a ani to tak nemůže být kvůli způsobu práce času a fyziky.
Android Emoji Policy pro Android 12
Kromě těchto výhod Google také přidal zásady Android Emoji pro aplikace běžící na Androidu 12 a vyšším. Tyto aplikace musí vyhovovat nejnovější verzi Unicode do 4 měsíců od veřejné dostupnosti, a to jedním z těchto tří způsobů:
- Pokud se AppCompat již používá, ujistěte se, že je povoleno emotikony.
- Použijte existující knihovnu EmojiCompat na všech plochách v rámci aplikace. To by mělo fungovat s vlastními pohledy, které přímo používají StaticLayout.
- Aktualizujte manipulaci a písmo/obrázky pro emotikony na základě nejnovější verze Unicode.
Pokud je moje chápání správné, poslední možností je pouze požádat vývojáře, aby sbalili emotikony do své aplikace. Ať tak či onak, vývojáři musí zajistit splnění těchto požadavků do února 2022.
Google má zdroje pro vývojáře aplikací, aby mohli vyřešit své problémy s emotikony, a doporučujeme vám je zkontrolovat:
- Android Developer Summit 2021: Zobrazení VŠECH emotikonů ve vaší aplikaci (a proč na tom záleží)
- Dokumentace pro vývojáře Android: Podpora moderních emotikonů
- Programové zásady pro vývojáře: Oznámení z 27. října 2021 – Zásady Android Emoji
Android 12L a Unicode 14
To byl Android 12L spuštěna včera přichází s Podpora Unicode 14 (přes 9to5Google). Unicode 14.0 obsahuje následující nové emotikony:
- Tání obličeje
- Obličej s otevřenýma očima a rukou přes ústa
- Obličej s vykukujícím okem
- Pozdrav obličej
- Tečkovaná čára obličej
- Obličej s diagonálními ústy
- Tvář zadržující slzy
- Pravá ruka
- Ruka vlevo
- Dlaň dolů ruku
- Dlaň nahoru ruku
- Ruka s ukazováčkem a zkříženým palcem
- Index ukazující na prohlížeč
- Srdce Ruce
- Kousání do rtu
- Osoba s korunou
- Těhotný muž
- Těhotná osoba
- Troll
- Korál
- Lotus
- Prázdné hnízdo
- Hnízdo s vejci
- fazole
- Nalévání kapaliny
- Sklenice
- Skluzavka hřiště
- Kolo
- Prstencová bóje
- Hamsa
- Zrcadlová koule
- Slabá baterie
- Berle
- Rentgen
- Bubliny
- Občanský průkaz
- Těžké rovná se znamení
Kromě toho vydání obsahuje variace a odstíny kůže těchto nových emotikonů, čímž se celkový počet zvyšuje na 112 nových designů.
Stručně řečeno, problémy Androidu s emotikony by měly být brzy minulostí.