Die Upgrade-Einladung ist ein User Flow, in dem die wichtigsten neuen Funktionen des derzeit verfügbaren großen Android-Betriebssystem-Upgrades präsentiert werden.
Der Ablauf soll Nutzer dazu bewegen, ihr Gerät auf die neueste Betriebssystemversion umzustellen.
Sobald ein Betriebssystemupgrade ausstehend ist, erhalten Nutzer eine Push-Benachrichtigung mit den neuen Funktionen und der Aufforderung, das Upgrade durchzuführen.
Wenn Sie die Upgrade-Einladung für Ihr Android-Betriebssystem aktivieren möchten, registrieren Sie sich über das Formular zur Aktivierung der Android-Upgrade-Einladung.
Upgrade-Einladungen anpassen
Sie können die Einladung zum Upgrade so anpassen:
- Entfernen Sie irrelevante Funktionen.
- Aktualisieren Sie die Sprache in den Textblöcken.
- Passen Sie die Animationen, Farben und Schriftarten an Ihre Marke an.
Wenn Sie den Ablauf anpassen möchten, lesen Sie die Richtlinien im Styleguide für Upgrade-Einladungen und fügen Sie Ihre Anpassungsinformationen in das Antragsformular zur Aktivierung von Android-Upgrade-Einladungen ein.
Styleguide für Upgrade-Einladungen
Verwenden Sie diesen Styleguide, um den Look der Upgrade-Einladung an Ihre eigene Marke anzupassen (Bildschirme, Farben, Schriftarten). Wir empfehlen dringend, die Größen und die Struktur dem Originaldesign möglichst nahe zu halten.
Der Vorgang für die Upgradeeinladung umfasst die folgenden drei Komponenten:
- Einführungsbildschirm
- Bildschirm mit Funktionen
- Outro-Bildschirm
Auf jedem Bildschirm wird eine Animation angezeigt, die die einzelnen Funktionen veranschaulicht.
Einführungsbildschirm
Der Einführungsbildschirm enthält eine kurze Animation, die den Nutzer begrüßt und ihn ermutigt, den auf dem Begrüßungsbildschirm gezeigten Ablauf zu starten.
Layout
Die Geräteanimation besteht immer aus:
- Weißer Hintergrund und bunte Formen
- Geräteframe
- UI-Inhalte
Stile
Wenn Sie das Material You-Design anpassen möchten, können Sie die im Beispiel gezeigten Standardfarben und -formen verwenden.
Wenn Sie Ihre eigene Markenfarbe verwenden, achten Sie darauf, dass sie gut zum UI-Hintergrund passt.
Bewegung
Option 1: Mit einer Uhr auf dem Startbildschirm
- Auf dem Display werden Zahlen angezeigt.
- Die Zahlen bewegen sich in die Mitte und werden kleiner. Der Frame für Smartphones wird angezeigt.
- Das Smartphone wird kleiner. Die Formen gelangen nun in den Bildschirm.
- Die Animation ist abgeschlossen. Die Formen bewegen sich sanft weiter.
Option 2: Keine Uhr auf dem Startbildschirm
- Das Smartphone öffnet den Bildschirm.
- Das Smartphone bewegt sich in die Mitte und wird größer. Die Formen erscheinen auf dem Bildschirm.
- Das Smartphone erreicht die maximale Größe und die Formen bewegen sich weiter.
Bildschirm mit Funktionen
Auf jedem Funktionsbildschirm wird eine Funktion des neuen Betriebssystems hervorgehoben.
Layout
Die Geräteanimation besteht immer aus:
- Bunt
- Geräterahmen
- UI-Inhalt
Styling
- Wählen Sie eine Hintergrundfarbe aus, die gut zu den UI-Inhalten und zum allgemeinen Erscheinungsbild passt.
- Legen Sie auf den Bildschirmen Schriftgrößen fest, die gut lesbar sind. Legen Sie bei Bedarf eine größere Schriftgröße fest.
Bewegung
Zeichnen Sie eine Animation des Ablaufs der einzelnen Funktionen auf, einschließlich Touch-Interaktionen. Exportieren Sie die Aufnahmen als Lottie-Dateien.
Outro-Bildschirm
Der Outro-Bildschirm rundet den Ablauf ab. Sie zeigt den Nutzern an, dass sie alle Bildschirme durchlaufen haben.
Layout
Die Geräteanimation besteht immer aus:
- Halbkreis im Hintergrund (plus animierte Formen)
- Geräterahmen
- UI-Inhalt
Styling
- Wählen Sie eine Hintergrundfarbe aus, die gut zu den Inhalten der Benutzeroberfläche und zum allgemeinen Erscheinungsbild passt.
- Verwenden Sie einen Halbkreis.
Bewegung
Folge der Standardabfolge für die Animation des Outro-Bildschirms:
- Das Mobiltelefon bewegt sich ein bisschen nach oben.
- Im Hintergrund wird ein Kreis angezeigt.
- Formen tauchen hinter dem Smartphone auf.
- Die Formen fliegen wie Konfetti aus dem Hintergrund.
Ablauf der Upgrade-Einladung testen
- Gehen Sie auf dem Android-Gerät zu Einstellungen > Google > Upgrade Party-Debugging.
- Bereiten Sie den Trigger für die Upgrade-Einladung für das entsprechende Betriebssystem vor. Dies hängt von Ihrer aktuellen Betriebssystemversion und dem zu testenden Upgrade-Einladungsvorgang ab. Sie haben folgende Möglichkeiten:
- Klicken Sie auf Fake-Upgrade (aktuelle Version) schreiben. Wenn Sie beispielsweise Android 13 verwenden, wird der Testablauf für Android 13 ausgelöst.
- Klicken Sie auf Ausstehendes Upgrade schreiben (aktuelle Version + 1). Wenn Sie beispielsweise Android 12 verwenden, wird der Testablauf für Android 13 ausgelöst.
- Klicken Sie auf Betriebssystemupgrade melden.
- Klicken Sie entweder auf die erhaltene Benachrichtigung oder auf Upgrade-Einladung öffnen.
Triggeroptionen für Upgrade-Einladung
Es gibt drei Möglichkeiten, die Upgrade-Einladung auszulösen: 1. automatisch 2. per Broadcast 3. Play Services SDK ausgelöst
Automatisch – von Google ausgelöste Benachrichtigung (nur für Geräte mit gOTA)
Bei OEM-Geräten mit gOTA erfolgt die Integration automatisch und es sind keine Schritte zur Integration von Upgrade-Einladungen erforderlich. Sobald ein ausstehendes größeres Betriebssystemupdate erkannt wird, wird eine Push-Benachrichtigung von den Google Play-Diensten an das Gerät gesendet. Daraufhin wird der Upgrade-Vorgang gestartet.
Android Broadcast – Von Google ausgelöste Benachrichtigung (empfohlen)
Eine App-Broadcast-Nachricht ist die einfachste und empfohlene Methode, um den Upgrade-Einladungsvorgang zu integrieren.
Mit einem Broadcast-Empfänger können Sie den Ablauf der Upgrade-Einladung über eine Broadcast-Nachricht aus Ihrer App auslösen. Über die Übertragung wird eine Push-Benachrichtigung von den Google Play-Diensten an das Gerät gesendet, was zum Upgrade-Einladungsvorgang führt.
Voraussetzungen für die Übertragung
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre App vorzubereiten.
Achten Sie darauf, dass die Konfigurationsdateien Ihrer App die folgenden Werte verwenden:
- minSdkVersion 14 oder höher
- CompilSdkVersion von 28 oder höher
- Eine „usesPermission“-Angabe für „android.permission.RECOVERY“
Nachricht an alle senden
Unten finden Sie eine Anleitung für die OEM-App (oder den OEM-Code), um einen Android-Broadcast zu senden, um die Push-Benachrichtigung auszulösen:
Senden Sie eine Broadcast-Nachricht mit der Aktion.
com.google.android.gms.growth.upgradeparty.upgradeinvite.ACTION_SYSTEM_UPDATE
Fügen Sie dem Broadcast das Paket
com.google.android.gms
hinzu.com.google.android.gms
Zusätzliche Anforderungen
Über die Upgrade-Einladung können Nutzer das Betriebssystem-Upgrade auch direkt ausführen.
Dazu müssen Sie einen benutzerdefinierten Intent bereitstellen, den Google über den Vorgang für die Upgrade-Einladung aufrufen kann, der den Download des Updates auslöst.
Beispiel für die Broadcast-Nutzung
Hier ein Beispiel für eine Anwendungsweitergabe:
Context context = getApplicationContext();
Intent upgradeInviteIntent = new Intent()
.setAction( "com.google.android.gms.growth.upgradeparty.upgradeinvite.ACTION_SYSTEM_UPDATE")
.setPackage("com.google.android.gms");
.putExtra("com.google.android.gms.growth.upgradeparty.upgradeinvite.EXTRA_PENDING_ANDROID_OS_VERSION_NUMBER", 14);
context.sendBroadcast(updateIntent);
Der Wert des Schlüssels EXTRA_PENDING_ANDROID_OS_VERSION_NUMBER
ist eine Ganzzahl, die die ausstehende Betriebssystemversion angibt. In diesem Beispiel ist die zu installierende Android-Version 14. Damit wird bestimmt, welcher Ablauf für die Upgrade-Einladung ausgelöst wird.
Play Services SDK – nur Auslösung des Ablaufs
Mit dem Drittanbieter-SDK können Sie den Ablauf für die Upgrade-Einladung über Ihre App oder Ihre eigenen OTA-Benachrichtigungen auslösen. Verwenden Sie eine externe API eines Drittanbieters, um den Vorgang für die Upgradeeinladung zu aktivieren. Diese Methode wird weniger empfohlen.
Voraussetzungen
Führen Sie die Schritte in den folgenden Abschnitten aus, um Ihre App vorzubereiten.
Achten Sie darauf, dass in der Build-Datei Ihrer App die folgenden Werte verwendet werden:
- minSdkVersion 14 oder höher
- Eine compileSdkVersion von 28 oder höher
App konfigurieren
So konfigurieren Sie Ihre App:
1. Extract the library from the provided .zip file, and place it in your
zu erstellen.
2. Fügen Sie der Gradle-Datei Ihres Moduls auf App-Ebene die Abhängigkeiten für das Google Growth SDK hinzu, normalerweise app/build.gradle
:
dependencies {
implementation files('<PATH_TO_BINARY>/play-services-growth-16.1.0-eap04.aar')
}
Fügen Sie die folgenden Bibliotheken ein, um die Abhängigkeiten des Clients bereitzustellen:
com.google.android.gms:play-services-base:18.0.1 com.google.android.gms:play-services-basement:18.0.0 com.google.android.gms:play-services-tasks:18.0.1
API-Initialisierung
Initialisieren Sie einen Client mit der UpgradeParty-Klasse:
import com.google.android.gms.growth.UpgradeParty; UpgradeParty.getClient(activity);
Der Aktivitätsparameter sollte das auslösende Aktivitätsobjekt sein.
API-Funktionen
Der resultierende UpgradePartyClient stellt die folgenden Funktionen bereit.
isEligibleForUpgradeInvite
import com.google.android.gms.growth.UpgradeInviteEligibilityParams;
Task<Boolean> isEligibleForUpgradeInvite(UpgradeInviteEligibilityParams params);
/** Contains parameters for the eligibility query. */
class UpgradeInviteEligibilityParams {
/** Integer indicating the pending OS version (in this example, the Android version to be installed is 14). This is used to determine which Upgrade Invite flow will be triggered. */
int pendingAndroidOsVersionNumber;
}
Gibt eine Aufgabe zurück, mit der asynchron geprüft wird, ob der Nutzer für eine Upgrade-Einladung infrage kommt. Der resultierende boolesche Wert gibt an, ob der Nutzer berechtigt ist oder nicht.
invokeUpgradeInvite
Task<Void> invokeUpgradeInvite();
Ruft die Aktivität „Upgrade-Einladung“ auf. Das resultierende „Task“-Objekt gibt an, ob beim Starten der Aktivität ein Fehler aufgetreten ist.
Fehlercodes
Beide API-Methoden können mit einer Ausnahme vom Typ com.google.android.gms.common.api.ApiException fehlschlagen. In solchen Fällen wird der Anrufer gebeten, es später noch einmal zu versuchen. Zu den erwarteten gängigen Statuscodes gehören:
- INTERNAL_ERROR: Bei einem Fehler im Ablauf der zugrunde liegenden Logik
- TIMEOUT: wenn die Anfrage nicht rechtzeitig bearbeitet werden konnte
- API_NOT_CONNECTED: Die API ist nicht verfügbar, d. h. das UpgradeParty-Modul ist noch nicht bereit.
- NETWORK_ERROR: Die Anfrage konnte aufgrund von Netzwerkfehlern nicht verarbeitet werden.
- DEVELOPER_ERROR: Das aufrufende Paket darf nicht auf die UpgradeParty API zugreifen.
Beispiel für die Verwendung des SDKs
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import com.google.android.gms.growth.UpgradeParty;
import com.google.android.gms.growth.UpgradePartyClient;
public class SampleActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final UpgradePartyClient client = UpgradeParty.getClient(this);
// Hide the invocation button initially
View startUpgradeInviteButton = findViewById(R.id.__some_button__);
startUpgradeInviteButton.setVisibility(View.GONE);
// Register an onClick handler to invoke the Upgrade Party Activity
startUpgradeInviteButton
.setOnClickListener(
view -> {
client
.invokeUpgradeInvite()
.addOnCompleteListener(
task -> {
if (!task.isSuccessful()) {
// Do something with error, see task.getException()
}
});
});
}
// Check if eligible for an Upgrade Party
client
.isEligibleForUpgradeInvite()
.addOnCompleteListener(
task -> {
if (!task.isSuccessful()) {
// Do something with error, see task.getException()
} else {
// Show/Hide invocation button, based on the result
int visibility =
task.getResult() ? View.VISIBLE : View.GONE;
startUpgradeInviteButton.setVisibility(visibility);
}
});
}