Auf dieser Seite wird erläutert, wie du die Play-Spieldienste-Anmeldung in deine vorhandene Identitäts- oder Cloud-Speicher-Lösung einbindest. Diese Empfehlungen sind zwar optional, helfen Ihnen aber dabei, die Cloud-Speicher-Anforderungen für Google Play Spiele auf dem PC zu erfüllen. Auf den Seiten Kontinuitätsanforderungen und Erwartetes Verhalten können Sie prüfen, ob Ihre Implementierung diese Anforderungen erfüllt.
Playerstatus wiederherstellen
Im Back-End Ihres Spiels werden Spielekonten wahrscheinlich durch eine Kennung dargestellt, mit der Sie ihren Fortschritt innerhalb Ihres Spiels abrufen und aktualisieren können. Wir nennen sie kurz Ihre Konto-ID. Wenn sich ein Spieler in den Play-Spieldiensten anmeldet, kannst du mit dieser Authentifizierung eine neue ID – die Spieler-ID der Play-Spieldienste – erhalten. Diese wird für die Cloud-Speicher-Anforderung verwendet.
Wenn sich ein Spieler über die Play-Spieldienste anmeldet, sollten Sie so vorgehen:
- Rufen Sie den OAuth-Code vom Client ab und senden Sie ihn an Ihren Server.
- Tausche das Authentifizierungstoken ein und lass dir vom Play Spiele-Server eine bestätigte Play-Spieldienste-ID senden. Dadurch wird sichergestellt, dass die ID vertrauenswürdig ist und nicht vorgeben, ein anderer Spieler zu sein, indem ein manipuliertes Gerät verwendet wird.
- Sie versuchen, ein Spielkonto basierend auf den Bedingungen des Geräts und aller verknüpften IDs aufzulösen.
Es gibt zwei neue Hauptszenarien:
- Sie speichern Play-Spieldienste-IDs in Ihrem Backend und weisen sie vorhandenen Konto-IDs zu, z. B.:
- Bei neuen Spielern wird der Fortschritt automatisch mit den Play-Spieldiensten verknüpft. (z.B. bei der Veröffentlichung eines Spiels, nach dem Tutorial oder nach einer bestimmten Anzahl von Levels usw.).
- Bei vorhandenen Spielern sollte der aktuelle Fortschritt automatisch mit den Play-Spieldiensten verknüpft werden, nachdem der Spieler auf eine Version Ihres Spiels aktualisiert wurde, in die Play-Spieldienste Version 2 integriert ist.
- Die Play-Spieldienste-ID kann mit einem oder mehreren Konten verknüpft werden und die Verknüpfung der Play-Spieldienste mit diesen Konten kann aufgehoben werden. Sie sollte jedoch mit mindestens einem gültigen Konto verknüpft sein.
- Spielfortschritt auf einem abgemeldeten/neuen Gerät basierend auf der Spieler-ID der Play-Spieldienste automatisch wiederherstellen
Wie du Play-Spieldienste-IDs speichern und vorhandenen Konten zuweisen kannst, ist flexibel, wie in den folgenden Beispielen dargestellt. Die wichtigsten Anforderungen sind, dass sich der Spieler nicht manuell anmelden oder eine Verknüpfung mit einem anderen Identitätssystem erstellen muss, um eine Verknüpfung zwischen seiner Play-Spieldienste-ID und dem Spielfortschritt herzustellen. Außerdem sollte dieser Spielerfortschritt nahtlos auf allen Oberflächen wiederhergestellt werden.
Betrachten Sie beim Entwerfen Ihrer Lösung zuerst Ihr vorhandenes System und wie verschiedene Identitätsanbieter in dieses System eingebunden sind. Einige Systeme verwenden eine einzige Kennung pro Konto, während andere mehrere Kennungen pro Konto verwenden.
Wenn du jede Konto-ID nur mit einer einzigen Kennung verknüpfen kannst, musst du Support für die Verknüpfung der Play-Spieldienste hinzufügen. Die folgenden Lösungen zeigen, wie das funktioniert.
Beispiellösungen
Zu den Beispiellösungen gehören Bindungs- und Rückruflösungen.
Als Bindung wird die ID der Play-Spieldienste dauerhaft oder halbdauerhaft mit einem Kontostatus verknüpft. Im Fall einer Bindung ändert sich das zugrunde liegende Konto, das über die Play-Spieldienste wiederhergestellt wird, für den Spieler ohne seine Aktion nicht, auch wenn er sich ab- und mit einem anderen Konto innerhalb Ihres Spiels anmeldet. Im Folgenden wird die Kontobindung erläutert.
Zur Erinnerung: Sie als Spieleentwickler speichern eine lose Zuordnung der Play-Spieldienste-ID und der zuletzt verwendeten Konten, die der Spieler wiederherstellen kann, wenn er sich auf einem anderen Gerät in den Play-Spieldiensten anmeldet. Jedes Mal, wenn sich der Spieler bei einem anderen Spielkonto mit derselben Play-Spieldienste-ID anmeldet, ändert sich diese Bindung. Hier ist ein Beispiel für ein Flussdiagramm, das im folgenden Beispiel unter Letzte Konten abrufen ausführlicher behandelt wird:
Weitere Beispiele für den User Flow finden Sie im Anhang zu den Lösungen unten.
Kontoverknüpfung
Wenn Ihr Spiel nicht viele Spieler mit mehreren Konten hat oder Sie Gamern ermutigen möchten, nur ein Konto in Ihrem Spiel zu haben, ist Bindung wahrscheinlich die beste Lösung für Ihr Spiel. In diesem Beispiel binden Sie das erste Konto, das angezeigt wird, während Sie bei den Play-Spieldiensten angemeldet sind, mit der Spieler-ID der Play-Spieldienste – ob als Gastkonto oder auch an eine andere Identitätsplattform gebunden. Nach dieser Bindung wird das gebundene Konto auf neuen Geräten automatisch wiederhergestellt. Da es sich um eine starke Bindung handelt, kann der Spieler auch das Play-Spieldienste-Profil wechseln, um das Konto innerhalb des Spiels zu wechseln. In diesem Szenario können Sie den Spieler auffordern, dies zu bestätigen.
Bei in Konflikt stehenden Konten sollten Sie den Spieler bitten, ein Konto auszuwählen. Diese widersprüchlichen Fälle sollten nur bei Spielern auftreten, die mehrere Konten in Ihrem Spiel haben und daher wahrscheinlich das Wissen und den Wunsch haben, mit einem bestimmten Konto zu spielen.
Sobald das Konto aufgelöst wurde, sollte sich die Entscheidung des Spielers in Ihrem Spiel merken, es sei denn, die Anmeldekennungen ändern sich. Wenn das Play-Spieldienste-Profil geändert wird oder sich der Spieler mit einer anderen ID innerhalb des Spiels anmeldet, sollten die oben genannten Schritte wiederholt werden, da der Spieler deutlich angibt, dass er sein Konto ändern möchte.
Verknüpfung aufheben
Wenn Sie dem Spieler die vollständige Kontrolle über seine Bindungen geben möchten, können Sie ihm anbieten, seine Spieler-ID der Play-Spieldienste mit einem Spielekonto aufzuheben. Das könnte für einige Spieler mit mehreren Konten wichtig sein, wenn sie ihre Spieler-ID der Play-Spieldienste versehentlich mit einem Konto verknüpft haben, das nicht ihr Hauptkonto ist.
Weitere Beispiele für Kontobindungen
Dieses Hauptbeispiel zeigt, dass eine bestimmte Spieler-ID der Play-Spieldienste (1) an das erste erfasste In-Game-Konto (A) gebunden ist und nicht reaktiviert wird, wenn sich der Spieler von seinem Spielfortschritt abmeldet, um mit einem anderen Konto zu spielen.
Sie können Spielern auch erlauben, ihr Konto neu zu verknüpfen. Das ist aber nicht zwingend erforderlich.
Auf dem Gerät das Konto wechseln
Hier hat der Spieler manuell das Konto der Play-Spieldienste gewechselt und dem Spiel somit ein starkes Signal gegeben, dass er sein In-Game-Konto zu einem anderen Konto wechseln möchte. Der Spieler möchte auf diese Änderung reagieren. Wenn dies berücksichtigt wird, verbessert sich das Spielerlebnis.
Vorhandenes gebundenes Konto mit einer anderen Kennung
Dieses Beispiel zeigt, dass auch Konten, die nicht mit IDs der Play-Spieldienste verknüpft sind, an die Play-Spieldienste gebunden und dann auf neuen Geräten wiederhergestellt werden sollten. Die meisten bestehenden Spieler Ihres Spiels mit Konten fallen in diese Kategorie.
Letzte Konten zurückrufen
Wenn wir über Lösungen nachdenken, stellt sich oft die Sicht auf mehrere Konten. Wenn Ihr Spiel Powernutzern Anreize gibt, viele Konten zu erstellen (z. B. Gacha-Spiele oder die Auswahl Ihrer eigenen Abenteuerspiele), ist die Bindung der Spieler-ID der Play-Spieldienste mit einem einzelnen Konto möglicherweise nicht optimal, wenn Sie zwischen Geräten wechseln.
Bei der Rückruflösung speichern Sie eine lose Zuordnung einer Spieler-ID der Play-Spieldienste und eines In-Game-Kontos. Der Spieler sieht dann einfach die letzten gespeicherten Konten, wenn er das Gerät wechselt oder wenn er abgemeldet ist.
In diesem Beispiel besitzt ein Spieler drei Konten für ein Spiel und wechselt dann zu einem neuen Gerät:
Wenn Sie den Spieler zur Wiederherstellung auffordern, können Sie auch eine Schaltfläche „Abbrechen“ oder „Neu erstellen“ anbieten, über die Spieler ein neues Konto erstellen können.
Der Einfachheit halber könnte Ihr Spiel nur das zuletzt aufgerufene Konto abrufen. Das kann für den Anwendungsfall des Wechsels zwischen mehreren Konten schwieriger sein, erfüllt aber dennoch die Continuity-Anforderung.
Weitere Recall-Beispiele
Der folgende Abschnitt enthält weitere Beispiele für die Verwendung von Recall.
Nicht-Android-Smartphones
Hier sehen Sie, ob bereits vorhandene Konten, bei denen ein Drittanbieterkonto verknüpft ist, zurückgerufen wurden oder die auf einem Gerät erstellt wurden, das nicht über die Play-Spieldienste angemeldet ist.
Ein häufiger Vorgang kann sein, auf einem Smartphone ohne Android zu starten und dann zu Google Play Spiele auf dem PC zu wechseln.
Da die Play-Spieldienste auf anderen Smartphones nicht verfügbar sind, ist keine Rückruffunktion aktiv und der Spieler muss seine Anmeldedaten manuell in Google Play Spiele auf dem PC eingeben.
Mehrere Play-Spieldienste-Profile für ein Konto
Es kann vorkommen, dass mehrere Play-Spieldienste-Profile aktiv sind, die zuvor ein bestimmtes Konto „zurückgerufen“ haben. Für diesen Fall gibt es zwei Hauptlösungen, die gleich gut funktionieren:
Trotzdem speichern Doppelte Verweise auf ein bestimmtes Konto werden im Modell „Trotzdem speichern“ ignoriert.
Überschreiben Im Modell „Überschreiben“ muss sich der Entwickler die Kontozuordnungen von Play-Spieldiensten und Kontozuordnungen merken und alte Zuordnungen aus den Tabellen im Modell „Überschreiben“ löschen. So können sie eine ordnungsgemäße 1:1-Zuordnung zurückgerufener Konten und Play-Spieldienste-Konten vornehmen.
Recall für dasselbe Gerät Spieler mit mehreren Konten können mithilfe der Recall-Implementierung schnell zwischen ihren Spielkonten wechseln.