Reduzir o tamanho dos APKs do seu app Android no Kit de ML

Antes de implantar em produção um app que usa um modelo no dispositivo do Kit de ML, considere seguir as recomendações dessa página para reduzir o tamanho do download de app.

Criar seu app como um Android App Bundle

Crie e implante seu app como um Android App Bundle para que o Google O Google Play pode gerar automaticamente APKs para densidades de tela, CPU específicas arquiteturas e linguagens. Os usuários só precisarão fazer o download dos APKs que correspondem à configuração do dispositivo e, o mais importante, os usuários fazem o download apenas bibliotecas de código nativo que correspondam à arquitetura do dispositivo.

Avançado: mover atributos de ML opcionais para módulos de recursos dinâmicos

Se você usar o Kit de ML em um recurso do app que não é o objetivo principal, considere refatorar o app para migrar esse recurso e o kit de ML dele dependências a um módulo de recurso dinâmico.

Para que os recursos do Kit de ML funcionem em um módulo de recursos sob demanda, no arquivo build.gradle do APK de base: incluem a dependência da biblioteca de suporte a recursos dinâmicos da Play Store do kit de ML.

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

Dessa forma, você evita que os usuários façam o download desnecessário dos modelos de ML do seu app, que podem ser grandes.

Avançado: exclua binários não utilizados do kit de ML

O Kit de ML foi criado com suporte para arquiteturas de 32 e 64 bits. Se seu app só oferece suporte ao modo de 32 bits, por exemplo, porque você usa uma que fornece somente binários de 32 bits. É possível excluir o kit de ML não utilizado do seu build:

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