Ahora puede usar Superposiciones de recursos de tiempo de ejecución (RRO) para cambiar las fuentes. Al agregar fuentes personalizadas para crear un paquete de fuentes, puede usar fuentes en temas y usar RRO para aplicar las personalizaciones.
Complete estas tareas:
- Hacer un paquete de fuentes
- Crear un paquete de superposición de dispositivos
- Use la familia de fuentes del sistema agregada
Se proporciona una estructura de archivo de muestra y archivos de muestra en custom-fonts.zip . Descargue y luego extraiga este archivo localmente para su propio uso.
Hacer un paquete de fuentes
Para hacer un paquete de fuentes:
-  Agregue todos los archivos ttfde fuentes al paquete de fuentes en la partición delvendor. Por ejemplo:vendor/[oem]/fonts/[oem]-sans/
-  Cree el archivo Android.mkpara el paquete de fuentes. Por ejemplo:vendor/[oem]/fonts/[oem]-[fontname]/Android.mk
-  Asegúrese de que el módulo se instalará en la partición del producten la carpetaetcPara hacerlo, confirme que el módulo tiene los siguientes indicadores:LOCAL_MODULE_CLASS := ETC LOCAL_PRODUCT_MODULE := true LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT)/fonts El código de ejemplo proporcionado anteriormente ilustra una definición completa de un módulo de paquete de fuentes. 
-  Cree un archivo llamado fonts.mkpara el paquete de fuentes y luego agregue los archivosttfde fuentes aPRODUCT_PACKAGES. Por ejemplo:vendor/[oem]/fonts/[oem]-[fontname]/fonts.mkPor ejemplo: PRODUCT_PACKAGES := \ [font name].ttf \ 
Crear un paquete de superposición de dispositivos
-  Cree un módulo llamado fonts_customization.xmlpara agregarlo a la compilación. Este módulo apunta al archivofonts_customization.xmlque contiene las familias de fuentes y llama a los archivos make de todos los paquetes de fuentes. Por ejemplo:vendor/[oem]/[device]_overlay/fonts/Android.mk
-  Cree las familias de fuentes:vendor/[oem]/[device]_overlay/fonts/fonts_customization.xmlEl nivel raíz del archivo debe ser una etiqueta fonts-modification. Agregue familias de fuentes para cada uno de los paquetes de fuentes bajo este elemento. Además, agreguecustomizationType="new-named-family"a cada familia de fuentes y asegúrese de que cada una tenga un atributo dename. Este nombre se usa más tarde para acceder a la familia de fuentes. Este archivo debe agregarse al módulofonts_customizations.xmldefinido anteriormente enAndroid.mk.El ejemplo proporcionado anteriormente contiene un archivo fonts_customization.xmlválido.
-  Crear fonts.mk. Por ejemplo:vendor/[oem]/[device]_overlay/fonts/fonts.mk
-  Agregue fonts_customization.xmldebajo de la marcaPRODUCT_PACKAGES.
-  Llame a cada uno de los paquetes de fuentes creados anteriormente.$(call inherit-product-if-exists, vendor/[oem]/fonts/[oem]-[fontname]/fonts.mk)
-  Agregue el módulo de fuentes a la compilación en PRODUCT_PACKAGESy luego vuelva a compilar. Las fuentes se instalarán en el sistema.
-  Verifique que los archivos de fuentes ttfestén en la carpeta/product/fontsdel dispositivo.
-  Verifique que fonts_customization.xmlesté en/product/etc/en el dispositivo.
Utilice la nueva familia de fuentes del sistema
Para usar la nueva familia de fuentes del sistema:
<style name="customstyle">
    <item name="android:fontFamily">customfontfamily</item>
</style>
  
  
