Android O includes many useful features, showing its maturity as an operating system. Some of these include downloadable fonts and font resources. These two features will make it easier to add a unique style to your app. With an upcoming update to Google Play Services, developers will be able to quickly access over 800 of them through Google Fonts.
With the advent of custom fonts, a feature that will be backported through the support library, there also means the possibility of backporting emoji to earlier versions of Android.
Emoji, the funny characters you see embedded in messages, are actually part of your phone’s default font. It uses a section of Unicode to render the pictographs at any size. However, as they are part of the system font, the icons that are shown are not updated unless the operating system is updated. So, as Unicode 10.0 is being drafted, with 69 new emoji, your phone may be left out. As the font won’t know what that symbol is, it is displayed as an empty rectangle, sometimes known as “tofu”.
To get the latest emoji, your fonts need to be updated over time apart from the operating system. This is possible with the new downloadable font APIs and the EmojiCompat library. This library, which anyone will be able to import, provides updated emoji rendering back to API 19 (KitKat).
In addition to many emoji fixes, Android O also greatly changes the emoji to be more general and move away from the blobs that are used currently.
The EmojiCompat library seems like a pretty decent solution. Its unfortunate that it is necessary, but it does cover a large number of devices and will continue to work over time. For those users on older versions of Android, expect to start seeing new emoji over time.
It’s not clear whether this will affect emoji input. Will GBoard add backwards compatibility for these emoji? That remains to be seen.