Android 字体下载在App开发中,使用特殊字体很常见,本篇文章介绍如何通过AndroidStudio和Google

在App开发中,UI设计使用好看的字体是很常见的,但是安卓系统中可以配置的字体就只有sans、serif、monospace这三种。

因此,为了符合UI的设计,常见的做法是下载字体放到res/font/文件夹下,然后通过android:fontFamily来更改字体。

但是这么做有一个显而易见的问题,字体文件会导致包体积增大,放两个字体文件一般会让apk增大10M以上。最近在看官方文档,偶然看到一个解决方案:可下载字体。

可下载字体

从Android P(28)以及Android支持库26开始,可以使用可下载字体API,通过Android支持库26可以让Android

ICE_CREAM_SANDWICH(14) 以上的设备都可以使用可下载字体。

可以通过以下三种方式来使用可下载字体:

通过 Android Studio 和 Google Play 服务

以程序化方式

通过支持库

这边主要介绍下第一种方式,后两种都需要在代码中做额外的实现,有兴趣的可以看看文档。

通过 Android Studio 和 Google Play 服务使用可下载字体

任意选择一个项目中的布局文件,选中Design模式。

选中一个TextView,在右侧Attributes栏目中找到fontFamily。

点开下拉框,找到More Fonts。

在Resources弹窗中选择自己想要的字体,点ok创建,AS会自动生成并配置选择的可下载字体,然后就可以在android:fontFamily中选择刚配置好的字体了。

实测效果:

otf为其他渠道下载的字体,dowanloadable为通过GooglePlay下载的字体。

Pixel 3a XL(有Google Play)

Mi 8 lite(没有Google Play)

总结

可以根据实测效果看到,可下载字体在没有GooglePlay的手机上是无效的,并且通过GoogleFonts下载的字体与我们自己下载的字体还是有一定的区别。

如果App主打海外市场,并且GoogleFonts内的字体符合UI设计的需求,那么使用可下载字体是很不错的选择。