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

Bevor Sie eine App für die Produktion bereitstellen, die ein ML Kit-On-Device-Modell verwendet, sollten Sie die Hinweise 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, damit Google Play automatisch APKs für bestimmte Bildschirmdichten, CPU-Architekturen und Sprachen generieren kann. Nutzer müssen nur die APKs herunterladen, die ihrer Gerätekonfiguration entsprechen. Das Wichtigste dabei ist, dass sie nur die nativen Codebibliotheken herunterladen, die ihrer Gerätearchitektur entsprechen.

Erweitert: Optionale ML-Features in dynamische Featuremodule verschieben

Wenn Sie ML Kit in einem Feature Ihrer Anwendung verwenden, das nicht ihr Hauptzweck ist, sollten Sie Ihre Anwendung refaktorieren, um dieses Feature und die ML Kit-Abhängigkeiten in ein dynamisches Funktionsmodul zu verschieben.

Damit ML Kit-Features in einem On-Demand-Funktionsmodul funktionieren, fügen Sie in der build.gradle-Datei Ihres Basis-APKs die Abhängigkeit der Supportbibliothek für dynamische Features des ML Kit Playstore 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, z. B. weil Sie eine Bibliothek verwenden, die nur 32-Bit-Binärprogramme 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'
      }
  }
}