Как уменьшить размер APK-файлов приложения ML Kit для Android

Прежде чем выпускать приложение, использующее модель ML Kit на устройстве, ознакомьтесь с рекомендациями на этой странице, чтобы уменьшить размер приложения при скачивании.

Создайте приложение в виде набора Android App Bundle

Создайте и разверните приложение в виде набора Android App Bundle, чтобы Google Play мог автоматически генерировать APK-файлы для определенных плотностей экрана, архитектур ЦП и языков. Пользователям нужно будет скачивать только APK-файлы, соответствующие конфигурации их устройств, и, что самое главное, только библиотеки машинного кода, соответствующие архитектуре их устройств.

Расширенные возможности: перенос необязательных функций машинного обучения в динамические модули функций

Если вы используете ML Kit в функции приложения, которая не является основной, рекомендуем провести рефакторинг приложения, чтобы переместить эту функцию и ее зависимости ML Kit в модуль динамических функций.

Чтобы функции ML Kit работали в модуле функций по запросу, в файле build.gradle базового APK добавьте зависимость библиотеки поддержки динамических функций ML Kit Playstore.

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

Это позволит избежать ненужного скачивания пользователями больших моделей ML вашего приложения.

Как исключить неиспользуемые двоичные файлы ML Kit (для опытных пользователей)

ML Kit поддерживает как 32-разрядную, так и 64-разрядную архитектуру. Если ваше приложение поддерживает только 32-разрядный режим (например, потому что вы используете библиотеку, которая предоставляет только 32-разрядные двоичные файлы), вы можете исключить неиспользуемые библиотеки ML Kit из своей сборки:

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