Android App Bundles

Ein Android App Bundle ist ein Veröffentlichungsformat, das den gesamten kompilierten Code und die Ressourcen Ihrer App enthält und das Generieren und Signieren von APKs in Google Play auf später verschieben wird.

Google Play verwendet dein App Bundle, um optimierte APKs für jede Gerätekonfiguration zu generieren und bereitzustellen. So werden nur der Code und die Ressourcen heruntergeladen, die für ein bestimmtes Gerät benötigt werden, um deine App auszuführen. Du musst nicht mehr mehrere APKs erstellen, signieren und verwalten, um die Unterstützung für verschiedene Geräte zu optimieren, und Nutzer erhalten kleinere, stärker optimierte Downloads.

Bei den meisten App-Projekten ist das Erstellen von App Bundles, die die Bereitstellung optimierter APKs unterstützen, nicht allzu aufwendig. Wenn du beispielsweise den Code und die Ressourcen deiner App bereits nach den geltenden Konventionen organisiert hast, kannst du einfach mit Android Studio oder über die Befehlszeile signierte Android App-Bundles erstellen und bei Google Play hochladen. Die optimierte Bereitstellung von APKs wird dann automatisch zu einem Vorteil.

Wenn Sie Ihre App im App-Bundle-Format veröffentlichen, können Sie optional auch Play Feature Delivery nutzen. Damit können Sie Ihrem App-Projekt Funktionsmodule hinzufügen. Diese Module enthalten Funktionen und Ressourcen, die nur basierend auf von Ihnen angegebenen Bedingungen in Ihrer App enthalten sind oder später zur Laufzeit mithilfe der Play Core Library heruntergeladen werden können.

Spieleentwickler, die ihre Apps mit App Bundles veröffentlichen, können Play Asset Delivery verwenden. Google Play ist eine Lösung zur Bereitstellung großer Mengen von Spiele-Assets. Sie bietet Entwicklern flexible Bereitstellungsmethoden und hohe Leistung.

Im folgenden Video erfährst du, warum du deine App mit Android App Bundles veröffentlichen solltest.

Größenbeschränkung für komprimierte Downloads

Die Veröffentlichung mit Android App Bundles hilft deinen Nutzern, deine App mit kleinstmöglichen Downloads zu installieren, und erhöht das Limit für die komprimierte Downloadgröße auf 200 MB. Wenn ein Nutzer Ihre App herunterlädt, darf die Gesamtgröße der komprimierten APKs, die zum Installieren Ihrer App erforderlich sind, also z. B. das Basis-APK und Konfigurations-APKs, nicht größer als 200 MB sein. Für alle nachfolgenden Downloads, z. B. das Herunterladen eines Funktionsmoduls (und seiner Konfigurations-APKs) bei Bedarf, gilt diese Beschränkung für die komprimierte Downloadgröße ebenfalls. Asset-Packs tragen nicht zu dieser Größenbeschränkung bei, sie unterliegen aber anderen Größenbeschränkungen.

Wenn beim Hochladen Ihres App-Bundles eine der möglichen Downloads Ihrer App oder deren On-Demand-Funktionen in der Play Console größer als 200 MB ist, wird eine Fehlermeldung angezeigt.

Beachte bitte, dass Android App Bundles keine APK-Erweiterungsdateien (*.obb) unterstützen. Wenn dieser Fehler beim Veröffentlichen Ihres App Bundles auftritt, verwenden Sie also eine der folgenden Ressourcen, um die Downloadgröße komprimierter APKs zu reduzieren:

  • Achten Sie darauf, alle Konfigurations-APKs zu aktivieren, indem Sie enableSplit = true für jeden Konfigurations-APK-Typ festlegen. Dadurch wird sichergestellt, dass Nutzer nur den Code und die Ressourcen herunterladen, die sie zum Ausführen Ihrer App auf ihrem Gerät benötigen.
  • Reduzieren Sie Ihre Anwendung, indem Sie nicht verwendeten Code und nicht verwendete Ressourcen entfernen.
  • Folge den Best Practices, um die App-Größe weiter zu reduzieren.
  • Sie können Funktionen, die nur von einigen Nutzern verwendet werden, in Funktionsmodule umwandeln, die Ihre App später bei Bedarf herunterladen kann. Beachten Sie, dass dies möglicherweise eine Refaktorierung Ihrer App erfordert. Probieren Sie daher zuerst die anderen oben beschriebenen Vorschläge aus.

Weitere Überlegungen

Im Folgenden finden Sie die derzeit bekannten Probleme beim Erstellen oder Bereitstellen Ihrer App mit Android App Bundles. Falls Probleme auftreten, die unten nicht beschrieben sind, melden Sie einen Fehler.

  • Teilinstallationen von per Sideload übertragenen Apps, d. h. Apps, die nicht über den Google Play Store installiert wurden und für die ein oder mehrere erforderliche unterteilte APKs fehlen, schlagen auf allen von Google zertifizierten Geräten und Geräten mit Android 10 (API-Level 29) oder höher fehl. Wenn Sie Ihre App über den Google Play Store herunterladen, sorgt Google dafür, dass alle erforderlichen Komponenten der App installiert sind.
  • Wenn Sie Tools verwenden, die Ressourcentabellen dynamisch ändern, können aus App Bundles generierte APKs unerwartet verhalten. Daher empfiehlt es sich, beim Erstellen eines App-Bundles solche Tools zu deaktivieren.
  • Derzeit ist es möglich, Attribute in der Build-Konfiguration eines Funktionsmoduls zu konfigurieren, die mit denen der Basismodule (oder anderen) in Konflikt stehen. Du kannst beispielsweise buildTypes.release.debuggable = true im Basismodul und in einem Funktionsmodul auf false setzen. Solche Konflikte können zu Build- und Laufzeitproblemen führen. Beachten Sie, dass Featuremodule standardmäßig einige Build-Konfigurationen vom Basismodul übernehmen. Es ist also wichtig, dass Sie wissen, welche Konfigurationen Sie in der Build-Konfiguration des Feature-Moduls beibehalten und welche auslassen sollten.

Weitere Informationen

Weitere Informationen zu Android App Bundles findest du in den folgenden Ressourcen.

Blogposts

Videos