Größe der ML Kit-APKs für Android-Apps reduzieren

Bevor Sie eine App in der Produktion bereitstellen, die ein ML Kit-On-Device-Modell verwendet, sollten Sie die Empfehlungen auf dieser Seite befolgen, um die Downloadgröße Ihrer Anwendung zu reduzieren.

App als Android App Bundle erstellen

Erstelle deine App als Android App Bundle und stelle sie bereit. So kann Google Play automatisch APKs für bestimmte Bildschirmdichten, CPU-Architekturen und Sprachen generieren. Nutzer müssen nur die APKs herunterladen, die ihrer Gerätekonfiguration entsprechen, und vor allem müssen sie nur die nativen Codebibliotheken herunterladen, die ihrer Gerätearchitektur entsprechen.

Erweitert: Optionale ML-Features in dynamische Funktionsmodule verschieben

Wenn Sie ML Kit für eine Funktion Ihrer App verwenden, die nicht ihr Hauptzweck ist, sollten Sie Ihre App refaktorieren, um diese Funktion und ihre ML Kit-Abhängigkeiten in ein dynamisches Funktionsmodul zu verschieben.

Damit ML Kit-Funktionen in einem On-Demand-Funktionsmodul verwendet werden können, fügen Sie in die build.gradle-Datei Ihrer Basis-APK die Abhängigkeit der Unterstützungsbibliothek für die ML Kit-Playstore-Bibliothek ein.

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

Dadurch wird verhindert, dass Nutzer unnötig große ML-Modelle Ihrer App herunterladen.

Erweitert: Nicht verwendete ML Kit-Binärdateien ausschließen

ML Kit unterstützt sowohl 32-Bit- als auch 64-Bit-Architekturen. Wenn Ihre Anwendung nur den 32-Bit-Modus unterstützt, weil Sie beispielsweise eine Bibliothek verwenden, die nur 32-Bit-Binärdateien bereitstellt, können Sie die nicht verwendeten ML Kit-Bibliotheken aus Ihrem Build ausschließen:

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