Sofortige Zustellung konfigurieren

Mit Google Play Instant können Nutzer mit Ihrer App interagieren, ohne APKs auf ihrem Gerät installieren zu müssen. Stattdessen können sie Ihre App über die Schaltfläche „Jetzt testen“ im Google Play Store oder über eine von Ihnen erstellte URL aufrufen. Diese Form der Inhaltsübermittlung erleichtert es dir, die Interaktion mit deiner App zu steigern.

Sie können ein Feature nur dann sofort aktivieren, wenn Sie auch das Basismodul Ihrer App sofort aktivieren. Wenn ein Nutzer eines der Funktionsmodule Ihrer App mit Instant-Version sehen möchte, muss sein Gerät außerdem das Basismodul Ihrer App für allgemeinen Code und Ressourcen herunterladen. Zur Unterstützung von Google Play Instant muss der Download für dein Basismodul und deine Funktion mehrere Kriterien erfüllen:

Wenn Sie ein Instant-fähiges Funktionsmodul mit Android Studio 3.5 oder höher erstellen, wie in diesem Abschnitt beschrieben, aktiviert die IDE automatisch sowohl das Basis- als auch das Funktionsmodul für Sie, indem Folgendes in das Manifest jedes Moduls aufgenommen wird:

<manifest xmlns:dist="http://schemas.android.com/apk/distribution"
    ... >
    <dist:module dist:instant="true" />
    ...

Außerdem werden beim Herunterladen und Installieren Ihrer App automatisch Instant-fähige Funktionsmodule heruntergeladen und mit dem Basis-APK Ihrer App installiert. Die IDE enthält also auch Folgendes im Instant-fähigen Funktionsmodul.

    <dist:module ...>
        <dist:delivery>
            <dist:install-time />
        </dist:delivery>
    </dist:module>

Das bedeutet, dass Sie beim Festlegen von dist:instant="true" nicht gleichzeitig <dist:on-demand /> einbeziehen können. Sie können jedoch Module mit aktivierter Instant-Version in der Instant-Version mithilfe der Play Feature Delivery Library bei Bedarf anfordern.

Neues Modul für sofortige Übermittlung konfigurieren

So fügen Sie Ihrem App-Projekt mithilfe von Android Studio ein Funktionsmodul mit Instant-Version hinzu:

  1. Öffnen Sie Ihr App-Projekt in der IDE, falls noch nicht geschehen.
  2. Wählen Sie in der Menüleiste File > New > New Module aus.
  3. Wählen Sie im Dialogfeld Create New Module (Neues Modul erstellen) die Option Instant Dynamic Feature Module aus und klicken Sie auf Weiter.
  4. Führen Sie im Abschnitt Neues Modul konfigurieren die folgenden Schritte aus:

    1. Wählen Sie im Drop-down-Menü das Basisanwendungsmodul für Ihr App-Projekt aus.
    2. Geben Sie einen Modulnamen an. Die IDE verwendet diesen Namen, um das Modul in der Gradle-Einstellungsdatei als Gradle-Unterprojekt zu identifizieren. Wenn Sie Ihr App-Bundle erstellen, verwendet Gradle das letzte Element des Unterprojektnamens, um das Attribut <manifest split> in das Manifest des Funktionsmoduls einzufügen.
    3. Geben Sie den Paketnamen des Moduls an. Standardmäßig schlägt Android Studio einen Paketnamen vor, der den Namen des Stammpakets des Basismoduls mit dem im vorherigen Schritt angegebenen Modulnamen kombiniert.
    4. Wähle das Mindest-API-Level aus, das das Modul unterstützen soll. Dieser Wert sollte mit dem Wert des Basismoduls übereinstimmen.
    5. Geben Sie den Modultitel mit bis zu 50 Zeichen an. Die Plattform verwendet diesen Titel, um das Modul gegenüber Nutzern zu identifizieren. Aus diesem Grund muss das Basismodul Ihrer App den Modultitel als Stringressource enthalten, die übersetzt werden kann. Beim Erstellen des Moduls mit Android Studio fügt die IDE dem Basismodul die String-Ressource hinzu und schleust den folgenden Eintrag in das Manifest des Funktionsmoduls ein:

      <dist:module
          ...
          dist:title="@string/feature_title">
      </dist:module>
      
    6. Klicke das Kästchen neben Fusing an, wenn dieses Modul für Geräte mit Android 4.4 (API-Level 20) und niedriger verfügbar und in Multi-APKs enthalten sein soll. Android Studio schleust Folgendes in das Manifest des Moduls ein, um deine Auswahl widerzuspiegeln.

      <dist:module>
          <dist:fusing dist:include="true" />
      </dist:module>
      
  5. Klicken Sie auf Fertig.

Nachdem Android Studio das Modul erstellt hat, überprüfen Sie seinen Inhalt im Bereich Projekt. Wählen Sie dazu in der Menüleiste Ansicht > Toolfenster > Projekt aus. Der Standardcode, die Ressourcen und die Organisation sollten denen des Standardanwendungsmoduls ähnlich sein.

Nachdem Sie ein Feature implementiert haben, das Sie bei Bedarf herunterladen möchten, können Sie es über die Play Feature Delivery Library anfordern.

Anwendung bereitstellen

Während du deine App mit Unterstützung für Funktionsmodule entwickelst, kannst du sie wie gewohnt auf einem verbundenen Gerät bereitstellen. Wähle dazu in der Menüleiste Ausführen > Ausführen aus oder klicke in der Symbolleiste auf Ausführen .

Wenn Ihr Anwendungsprojekt ein oder mehrere Funktionsmodule enthält, können Sie die Features auswählen, die beim Bereitstellen der Anwendung enthalten sein sollen. Ändern Sie dazu die vorhandene Ausführungs-/Fehlerbehebungskonfiguration so:

  1. Wählen Sie in der Menüleiste Run > Edit Configurations (Ausführen > Konfigurationen bearbeiten) aus.
  2. Wählen Sie im linken Bereich des Dialogfelds Run/Debug Configurations die gewünschte Konfiguration der Android-App aus.
  3. Klicken Sie auf dem Tab Allgemein unter Dynamische Features zum Bereitstellen auf das Kästchen neben jedem Featuremodul, das Sie bei der Bereitstellung Ihrer Anwendung einbinden möchten.
  4. Klicke auf OK.

Standardmäßig stellt Android Studio Ihre Module mit Instant-Version nicht als Instant-Funktion bereit und verwendet keine App Bundles zur Bereitstellung Ihrer App. Stattdessen werden von der IDE APKs erstellt und auf Ihrem Gerät installiert, die statt der APK-Größe für eine Bereitstellungsgeschwindigkeit optimiert sind. Wenn Sie Android Studio so konfigurieren möchten, dass stattdessen APKs und Instant-Versionen aus einem App Bundle erstellt und bereitgestellt werden, ändern Sie Ihre Ausführungs-/Fehlerbehebungskonfiguration.