Google ønsker virkelig at løse Androids emoji-problem

click fraud protection

Android har et Emoji-problem, og Google tager en tostrenget tilgang til at løse det med Updateable System Fonts og EmojiCompat.

Elsk dem ❤ eller had dem 🤬, emojis er blevet en fast form for udtryk i disse dage. Disse små små klatter tilføjer følelser og hensigt til ord, og samtale på tværs af internettet ville være ufuldstændig uden dem. De er en stor ting, selv for interpersonelle samtaler - hvorfor spilde tid på at sige mange ord, når emoji laver et trick? Så det kommer ikke som nogen overraskelse, at Google har taget et kig på Android og regnet med, at den har et emoji-problem, og med Android 12, den forsøger at rette op på det.

Android og dets emoji-problem

Emojis er en stor ting. Emoji-brug er på et rekordhøjt niveau, og brugere på nogle apps sender milliarder af emojis hver dag. At fodre og holde trit med disse ændringer er Unicode standard, og den modtager hyppige opdateringer, der tilføjer nye emojis. Disse nye emojis centrerer sig om nye use cases, trends og endda variationer for at gøre dem til bedre repræsentanter for mangfoldighed og inklusion.

I dets Android Dev Summit 2021 præsentation, siger Google, at 96 % af Android-brugere ikke ser de nyeste emojis, i skarp kontrast til de 16 % af iOS-brugere, der ikke er i stand til at se den nyeste emoji. De 100 bedste emojis udgør ~82 % af de samlede emoji-andele. Men for 20 % af disse delinger sender afsenderen en emoji, men modtageren ser kun en "tofu" eller den ødelagte billede angivet med en boks med et X i, hvilket betyder, at deres telefonsystem ikke har den relevante emoji til Skærm.

Problemerne slutter ikke med tofus. I visse situationer vedrørende nyere emojis og ældre Android-versioner ender den viste emoji med at blive en formel repræsentation, der kræver, at brugerne laver noget mental gymnastik for at forstå, hvad der virkelig foregår på.

Før Android 12, når Unicode får nye emojis, var vi nødt til at vente på en Android OS-opgradering til nå vores telefoner for at give support til emojin, før vi rent faktisk kan gøre dem til en del af vores internet lingo. Og vi ved alle, hvor dårlig Androids opdateringssituation faktisk er. Ja, det er blevet bedre. Men medmindre du har et flagskib, er chancerne for, at du stadig tager et par måneder, før den seneste opdatering når din enhed i en stabil udgivelse. Der er en god chance for, at flere nye emojis er blevet tilføjet i denne tidsforsinkelse, hvilket holder dig ude af løkken på det aktuelle sprog.

Det er klart, at der er et problem her, og der skal findes en løsning. Google satte sig et mål om at gøre hver emoji tilgængelig for alle Android-brugere i alle apps, og det tager en tostrenget tilgang for at opnå dette.

Løsning 1 af 2: Opdaterbare systemskrifttyper (Android 12 og nyere)

Startende med Android S (Android 12) har Google introduceret opdaterbare systemskrifttyper, og den første skrifttype, de vil opdatere, er emoji-skrifttypen.

Vi har talt om Opdaterbare systemskrifttyper tidligere, faktisk næsten et år siden. I Android 11 og derunder er alle skrifttyper på Android gemt i systempartitionen, og mere specifikt under /system/fonts vejviser. Især emojis er til stede i filen kaldet NotoColorEmoji.ttf. Systempartitionen er skrivebeskyttet, og opdatering af enhver fil i partitionen kræver en systemopdatering, mens partitionen ikke er monteret. Så de eneste måder at få nye skrifttyper og nye emojis på er at vente på en officiel OTA-opdatering eller installer det selv uofficielt gennem root.

Med Android 12 og opdaterbare systemskrifttyper skrifttypefiler gemmes/data/fonts/files, og tilgængelig til at læse for alle apps, men kan kun skrives af system_server og i det. På denne måde kan Google skubbe opdaterede skrifttypefiler ud, og apps kan læse dem for at få de mest opdaterede oplysninger, uanset hvornår den sidste Android-systemopdatering var på telefonen. Som app-udvikler og endda som bruger behøver du aldrig at tænke på emoji-support igen på en Android 12+-enhed.

Løsning 2 af 2: EmojiCompat med AppCompat 1.4 (Android 4.4. til Android 11)

Android 12 blev netop lanceret for et par uger siden i den stabile gren, og det vil vare et stykke tid, før du ser spredning på tværs af Android-økosystemet. Så du har brug for en løsning, der fungerer på Android 11 og derunder. Den løsning er EmojiCompat-understøttelsesbibliotek.

AppCompat 1.4 inkorporerer EmojiCompat, hvilket betyder, at alle apps, der bruger AppCompat 1.4, automatisk understøtter moderne emojis. Som app-udvikler skal du blot integrere/bumpe din AppCompat-version til 1.4, og du vil vise opdaterede emojis til brugere selv på Android 4.4, uden at du behøver nogen yderligere indsats fra nogens side.

Der er dog en lille fangst. Fangsten er, at dette er en GMS-kerne-orienteret ændring, der kræver, at Google Play Services fungerer. Dette er ikke en ændring af AOSP for ældre Android-versioner på den måde, som den første løsning er, og det kan det heller ikke rigtig være på grund af den måde, tid og fysik fungerer på.

Android Emoji-politik til Android 12

Ud over disse højdepunkter har Google også tilføjet en Android-emoji-politik for apps, der kører på Android 12 og nyere. Disse apps skal overholde den seneste Unicode-version inden for 4 måneder efter offentlig tilgængelighed, og de skal gøre det på en af ​​disse tre måder:

  • Hvis AppCompat allerede er i brug, skal du sørge for, at emoji er aktiveret.
  • Brug et eksisterende EmojiCompat-bibliotek på tværs af alle overflader i appen. Dette bør fungere med brugerdefinerede visninger, der direkte bruger StaticLayout.
  • Opdater håndteringen og skrifttypen/billederne til emoji baseret på den seneste version af Unicode.

Hvis min forståelse er korrekt, er den sidste mulighed bare at bede udviklere om at samle emojis i deres app. Uanset hvad skal udviklere sikre, at de opfylder disse krav inden februar 2022.

Google har ressourcer til app-udviklere til at løse deres emoji-problemer, og vi anbefaler, at du tjekker dem ud:

  • Android Developer Summit 2021: Viser ALLE emojis i din app (og hvorfor det betyder noget)
  • Android-udviklerdokumentation: Understøttelse af moderne emojis
  • Programpolitik for udviklere: meddelelse den 27. oktober 2021 – Android-emoji-politik

Android 12L og Unicode 14

Android 12L det var lanceret i går kommer med Unicode 14 support (via 9to5Google). Unicode 14.0 indeholder følgende nye emoji:

  • Smeltende ansigt
  • Ansigt med åbne øjne og hånd over munden
  • Ansigt med Peeking Eye
  • Hilsende ansigt
  • Stiplet linje ansigt
  • Ansigt med diagonal mund
  • Ansigt, der holder tårer tilbage
  • Højre hånd
  • Venstre hånd
  • Håndflade ned hånd
  • Håndfladen op
  • Hånd med pegefinger og tommelfinger krydset
  • Indeks, der peger på fremviseren
  • Hjerte hænder
  • bidende læbe
  • Person med krone
  • gravid mand
  • Gravid person
  • Trold
  • Koral
  • Lotus
  • Tom rede
  • Rede med æg
  • Bønner
  • Hældning af væske
  • Krukke
  • Legeplads Slide
  • Hjul
  • Ringbøje
  • Hamsa
  • Spejlkugle
  • Lavt batteri
  • Krykke
  • Røntgen
  • Bobler
  • ID-kort
  • Tungt lighedstegn

Derudover inkluderer udgivelsen variationer og hudtoner af disse nye emoji, hvilket bringer det samlede antal til 112 nye designs.

Lang historie kort, Androids emoji-problemer burde snart være fortid.