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 Google Play-Dienste-Instant-APIs funktionieren nicht mehr. Nutzer erhalten keine Instant Apps mehr von Play.
Wir nehmen diese Änderung aufgrund von Entwicklerfeedback 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 so ihr Interesse für bestimmte Inhalte zu wecken.
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 lädt wie eine typische mobile Webseite, muss sie gut strukturiert und effizient sein. Je kleiner das Binärprogramm deiner Instant-App ist, desto schneller lädt sie und desto besser ist die Nutzerfreundlichkeit.
In diesem Dokument finden Sie Best Practices für die Verwaltung der Struktur und der Binärgröße Ihrer App, um eine reibungslose Nutzung der Sofort-App 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 lässt sich erzielen, wenn Sie die App in mehrere Funktionsmodule umgestalten. Beginnen Sie mit einem Basis-Funktionsmodul und extrahieren Sie dann thematisch zusammengehörige 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, wenn Sie Funktionsmodule erstellen. 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. Wenn Sie eine Instant-App für ein bestimmtes Funktionsmodul veröffentlichen möchten, darf die Gesamtgröße dieses Funktionsmoduls und des Basis-Funktionsmoduls nicht mehr als 15 MB betragen.
Best Practices
Beachten Sie beim Refaktorieren Ihrer App die folgenden Best Practices:
- Dieselbe Codebasis für beide App-Typen verwenden
- Sie können das Projektmanagement Ihrer App vereinfachen, indem Sie dieselbe modulare Codebasis verwenden, um sowohl Ihre installierte App als auch Ihre Sofort-Apps zu erstellen.
- Für mehrere Funktionsmodule entwickeln
- Auch wenn Ihre App nur einen Workflow hat und derzeit nur ein einzelnes Funktionsmodul benötigt, ist es dennoch ratsam, sie für mehrere Funktionsmodule zu konzipieren. So können Sie Ihrer App vorhandene Module hinzufügen, ohne die Größe des ursprünglichen Funktionsmoduls zu beeinträchtigen.
- Konzentrieren Sie sich am Anfang nicht auf die Größenbeschränkung für Funktionsmodule. Die Größenbeschränkungen für
- -Funktionsmodule gelten nicht für lokal erstellte Binärdateien. Sie können eine Instant-App auch über den internen Test-Track veröffentlichen. In diesem Fall gilt eine Größenbeschränkung von 15 MB für Funktionsmodule. Nur für den Alpha-Track und den Produktions-Track gilt das Limit von 15 MB.
App-Ressourcen aktualisieren
Einige Apps, insbesondere solche mit einer längeren Codebasis, 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 in Betracht ziehen.
Dateigröße von Bildern verringern
Sie können die Gesamtgröße der Drawables Ihrer App deutlich reduzieren, indem Sie das Dateiformat WebP 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, sollten Sie so viele lokalisierte Ressourcen wie möglich reduzieren. Dieser Schritt ist besonders nützlich, wenn Sie eine „App Compat“-Bibliothek wie android.support.v7.appcompat
verwenden.
Diese Bibliothek enthält Meldungen in vielen Sprachen, von denen einige möglicherweise nicht von Ihrer App unterstützt werden.
Weitere Informationen zum Entfernen nicht verwendeter alternativer Ressourcen, insbesondere nicht verwendeter Sprachen
Zusätzliche Dateien entfernen
Möglicherweise werden einige der Ressourcen, die Sie in Ihr Projekt importiert haben, in Ihrer App nicht mehr verwendet. Um diese Ressourcen zu entfernen, bietet Android Studio einen Lint-Check für diese spezielle Situation. So verwenden Sie das Tool:
- Drücken Sie Strg + Alt + Umschalt + I (Befehlstaste + Alt + Umschalt + I unter Mac OS).
- Geben Sie im angezeigten Dialogfeld
"unused resources"
ein. - Wählen Sie die Option Nicht verwendete Ressourcen aus, um die Überprüfung der Ressourcennutzung zu starten.
Wenn in Ihrer App noch große Ressourcen vorhanden sind, sollten Sie überlegen, ob Sie sie aus Ihrer App entfernen und als separate 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 Sofort-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 eine überraschende Anzahl von Abhängigkeiten annehmen, insbesondere von einem der folgenden Typen:
- Native Bibliotheken:Bibliotheken, die nativen Code enthalten, der von Ihrer Sofort-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 zum Identifizieren von überflüssigen Abhängigkeiten im Projekt Ihrer App:
- Externe Bibliotheken
Die Projektansicht von Android Studio enthält den Bereich 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 für Ihre App nicht erforderlich sind.
- APK Analyzer
Mit dem Tool APK Analyzer können Sie verschiedene Builds vergleichen, auch 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ängigkeitsverwaltung.
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.