Reduce el tamaño de los APK de tu app para Android que implementa ML Kit

Antes de implementar en producción una app que usa un modelo en el dispositivo para el Kit de AA, sigue los consejos que se indican en esta página a fin de disminuir el tamaño de descarga de tu app.

Compila tu app como un Android App Bundle

Compila y, luego, implementa tu app como un Android App Bundle a fin de que Google Play genere automáticamente los APK para densidades de pantalla, arquitecturas de CPU y lenguajes específicos. Los usuarios solo tendrán que descargar los APK que coincidan con la configuración de sus dispositivos. Pero lo principal es que solo deberán descargar las bibliotecas de código nativo que coincidan con la arquitectura de sus dispositivos.

Avanzado: Transfiere las características opcionales del AA a módulos de funciones dinámicas

Si usas ML Kit en una función de tu app que no corresponda a su propósito principal, considera refactorizar la app para transferir esa función y sus dependencias de ML Kit a un módulo de funciones dinámicas.

Para que las funciones de ML Kit funcionen en un módulo de funciones a pedido, incluye la dependencia de la biblioteca de compatibilidad con funciones dinámicas de Play Store de ML Kit en el archivo build.gradle de tu APK base.

dependencies {
    // ...
    implementation 'com.google.mlkit:playstore-dynamic-feature-support:16.0.0-beta2'
}

Si lo haces, evitarás que los usuarios deban descargar los modelos de AA de la app, que pueden ser de gran tamaño.

Avanzado: Excluye los objetos binarios no utilizados del ML Kit

El Kit de AA se compila con compatibilidad para arquitecturas de 32 y 64 bits. Por ejemplo, si tu app solo es compatible con el modo de 32 bits porque usas una biblioteca que solo proporciona objetos binarios de 32 bits, puedes excluir de tu compilación las bibliotecas del Kit de AA que no se usen, de la siguiente manera:

android {
  defaultConfig {
      ndk {
          // Don't package arm64-v8a or x86_64
          abiFilters 'armeabi-v7a', 'x86'
      }
  }
}