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

Antes de colocar em produção um app que usa um modelo no dispositivo do kit de ML, siga as recomendações desta página para reduzir o tamanho do download do app.

Criar seu app como um Android App Bundle

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

Avançado: migre recursos 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 principal, refactorize o app para migrar esse recurso e as dependências do kit de ML para um módulo de recurso dinâmico.

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

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

Ao fazer isso, você evita que os usuários façam downloads desnecessários dos modelos de ML do app, que podem ser grandes.

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

O ML Kit foi desenvolvido com suporte para arquiteturas de 32 e 64 bits. Caso seu app aceite apenas o modo de 32 bits, por exemplo, porque você usa uma biblioteca que fornece apenas binários de 32 bits, será possível excluir da sua versão as bibliotecas não utilizadas do kit de ML:

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