Warnung:Google Play Instant ist nicht mehr verfügbar. Ab Dezember 2025, können Instant Apps nicht mehr über Google Play veröffentlicht werden und alle Instant-APIs für Google Play-Dienste funktionieren nicht mehr. Nutzer erhalten dann keine Instant Apps mehr von Google Play über irgendeinen Mechanismus.
Wir nehmen diese Änderung aufgrund von Feedback von Entwicklern und unserer kontinuierlichen Investitionen zur Verbesserung des Ökosystems seit der Einführung von Google Play Instant vor.
Damit Sie Ihre App weiter optimieren und noch mehr Nutzer gewinnen können, empfehlen wir, Nutzer über Deeplinks zu Ihrer regulären App oder Ihrem regulären Spiel weiterzuleiten und sie so bei Bedarf zu bestimmten Inhalten oder Funktionen zu führen.
Google Play Instant bietet einfach per Weblink Zugriff auf optimale, native Funktionen. Apps können so ohne vorherige Installation verwendet werden, was zu mehr und längerem Nutzerinteresse führt. Damit eine Instant App so schnell wie eine typische mobile Webseite geladen wird, müssen Sie jedoch eine gut strukturierte, effiziente Instant App erstellen. Je kleiner die Binärdatei Ihrer Instant App ist, desto schneller wird sie geladen und desto reibungsloser ist die Nutzererfahrung.
In diesem Dokument finden Sie Best Practices für die Verwaltung der Struktur und der Binärgröße Ihrer App, um eine reibungslose Instant App-Erfahrung zu ermöglichen. Sie können diese Best Practices auch für Ihre installierbare App anwenden.
In mehrere Funktionsmodule umgestalten
Die größte Verbesserung der Binärgröße Ihrer App erzielen Sie, wenn Sie die App in mehrere Funktionsmodule umgestalten. Beginnen Sie mit einem Basisfunktions modul, und extrahieren Sie dann thematisch verwandte Workflows in eigene Funktionsmodule. Weisen Sie jedem Funktionsmodul eine Startaktivität und eine eindeutige URL zu, damit Nutzer den Workflow des Moduls erfolgreich abschließen können.
Halten Sie das Basisfunktionsmodul so klein wie möglich. Achten Sie insbesondere auf die Teile Ihrer App, die Zugriff auf Ihre abhängigen Bibliotheken benötigen. Wenn nur ein Funktionsmodul eine bestimmte Bibliothek verwendet, importieren Sie diese Bibliothek im Funktionsmodul selbst und nicht im Basisfunktionsmodul. Beachten Sie, dass die Gesamtgröße dieses Funktionsmoduls und des Basisfunktionsmoduls weniger als 15 MB betragen muss, damit Sie eine Instant App für ein bestimmtes Funktionsmodul veröffentlichen können.
Best Practices
Beachten Sie beim Umgestalten Ihrer App die folgenden Best Practices:
- Dieselbe Codebasis für beide App-Typen verwenden
- Sie können den Projektverwaltungsprozess Ihrer App vereinfachen, indem Sie dieselbe modulare Codebasis verwenden, um sowohl Ihre installierte App als auch Ihre Instant Apps zu erstellen.
- Für mehrere Funktionsmodule entwickeln
- Auch wenn Ihre App nur einen Workflow hat und derzeit nur ein einziges Funktionsmodul benötigt, ist es dennoch eine gute Idee, für mehrere Funktionsmodule zu entwickeln. So können Sie Ihrer App vorhandene Module hinzufügen, ohne die Größe des ursprünglichen Funktionsmoduls zu beeinflussen.
- Zu Beginn nicht auf das Größenlimit für Funktionsmodule konzentrieren
- Größenlimits für Funktionsmodule gelten nicht für lokal erstellte Binärdateien. Sie können eine Instant App auch über den Track für interne Tests veröffentlichen. Hier gilt ein 15 MB Limit für die Größe von Funktionsmodulen. Nur für die Tracks Alpha und Produktion gilt das Limit von 15 MB.
App-Ressourcen aktualisieren
Einige Apps, insbesondere solche mit einer längeren Codebasis-Historie, enthalten Ressourcen, die von den Binärdateien Ihrer App nicht mehr verwendet werden. Wenn Sie nach Möglichkeiten suchen, die Module Ihrer App zu verkleinern, sollten Sie die folgenden häufigen Quellen für unnötigen Code berücksichtigen.
Dateigröße von Bildern reduzieren
Sie können die Gesamtgröße der Drawables Ihrer App erheblich reduzieren, indem Sie das WebP Dateiformat anstelle von PNG verwenden. Google Play Instant bietet vollständige Unterstützung für WebP, einschließlich Transparenz und verlustfreier Komprimierung, sodass die Bildqualität gleich bleibt.
Entfernen Sie nach Möglichkeit alle Anforderungen an die Abwärtskompatibilität für die Verwendung anderer PNG-Bilder. Wenn Sie PNG-Bilder verwenden müssen, platzieren Sie sie in dem Modul, das zum Erstellen und Installieren Ihrer App verwendet wird.
Nicht verwendete Sprachen entfernen
Wenn Ihre App mehrere Sprachen unterstützt, reduzieren Sie so viele lokalisierte Ressourcen wie möglich. Dieser Schritt ist besonders nützlich, wenn Sie eine "App
Compat"-Bibliothek wie android.support.v7.appcompat verwenden.
Diese Bibliothek enthält Nachrichten in vielen Sprachen, von denen einige möglicherweise nicht von Ihrer App unterstützt werden.
Weitere Informationen finden Sie unter Nicht verwendete alternative Ressourcen entfernen, insbesondere nicht verwendete Sprachen.
Zusätzliche Dateien entfernen
Möglicherweise werden einige der Ressourcen, die Sie in Ihr Projekt importiert haben, nicht mehr von Ihrer App verwendet. Um diese Ressourcen zu entfernen, bietet Android Studio eine Lint-Prüfung für diese spezielle Situation. So verwenden Sie das Tool:
- Drücken Sie Strg + Alt + Umschalt + I (Befehl + Alt + Umschalt + I unter Mac OS).
- Geben Sie im angezeigten Dialogfeld
"unused resources"ein. - Wählen Sie die Option Unused resources (Nicht verwendete Ressourcen) aus, um die Überprüfung der Ressourcennutzung zu starten.
Wenn sich noch große Ressourcen in Ihrer App befinden, überlegen Sie, ob Sie sie aus Ihrer App entfernen und als eigenständige Dateien herunterladen können, nachdem der Nutzer mit Ihrer App interagiert hat. Diese Art der verzögerten Bildladefunktion erfordert in der Regel eine Codeänderung, kann aber die Dateigröße Ihrer Instant App erheblich reduzieren, da nur die Ressourcen heruntergeladen werden, die ein Nutzer explizit anfordert.
Nicht verwendete Bibliotheken entfernen
Wenn der Umfang einer App wächst, kann sie überraschend viele Abhängigkeiten aufweisen, insbesondere eine der folgenden Arten:
- Native Bibliotheken:Bibliotheken, die nativen Code enthalten, der von Ihrer Instant App nie ausgeführt wird.
- Transitive Abhängigkeiten:Bibliotheken, von denen die importierten Bibliotheken Ihrer App abhängen.
Android Studio bietet mehrere nützliche Tools, mit denen Sie überflüssige Abhängigkeiten im Projekt Ihrer App identifizieren können:
- Externe Bibliotheken
Die Ansicht Project (Projekt) von Android Studio enthält den Abschnitt External Libraries (Externe Bibliotheken).
Dieser Abschnitt enthält alle Bibliotheken, die von Ihrer App verwendet werden, einschließlich nativem Code und aller transitiven Abhängigkeiten. Suchen Sie in dieser Ansicht nach nicht verwendeten oder doppelten Bibliotheken, die Ihre App nicht benötigt.
- APK Analyzer
Mit dem APK Analyzer-Tool können Sie verschiedene Builds vergleichen, einschließlich Instant App-Builds.
Nachdem Sie ermittelt haben, welche Bibliotheken Ihre App nicht benötigt, schließen Sie sie aus, indem Sie Ihrer Gradle-Build-Datei Zeilen wie die folgenden hinzufügen:
<feature_module>/build.gradle
Groovy
dependencies { implementation('some-important-but-large-library') { exclude group: 'com.example.imgtools', module: 'native' } }
Kotlin
dependencies { implementation('some-important-but-large-library') { exclude(group = "com.example.imgtools", module = "native") } }
Weitere Informationen zum Reduzieren der Gesamtimportgröße der Abhängigkeiten Ihrer App finden Sie im Gradle-Leitfaden zur Abhängigkeits verwaltung.
Cloud-Bereitstellung von Assets implementieren
Wenn Sie die Größe noch weiter reduzieren müssen, müssen Sie möglicherweise auf die Cloud-Bereitstellung von Assets zurückgreifen.