In diesem Dokument wird beschrieben, wie Sie vorhandene Spiele vom Games v1-SDK zum Games v2-SDK migrieren. Für das Play Games-Plug-in für Unity, Version 10 und früher, wird das Games v1-SDK verwendet.
Hinweis
- Sie müssen die Play Console bereits eingerichtet und den Unity Hub installiert haben.
Google Play Spiele-Plug-in für Unity herunterladen
Wenn Sie die neuesten Funktionen der Play Spiele-Dienste nutzen möchten, laden Sie die aktuelle Plugin-Version herunter und installieren Sie sie. Laden Sie es aus dem GitHub-Repository herunter.
Altes Plug-in entfernen
Entfernen Sie im Unity Hub die folgenden Ordner oder Dateien.
Assets/GooglePlayGames Assets/GeneratedLocalRepo/GooglePlayGames Assets/Plugins/Android/GooglePlayGamesManifest.androidlib Assets/Plugins/Android
Neues Plug-in in Ihr Unity-Projekt importieren
So importieren Sie das Plug-in in Ihr Unity-Projekt:
- Öffnen Sie Ihr Spielprojekt.
- Klicken Sie im Unity Hub auf Assets > Import Package > Custom Package, um die heruntergeladene Datei
unitypackagein die Assets Ihres Projekts zu importieren. Achten Sie darauf, dass Ihre aktuelle Build-Plattform auf Android eingestellt ist.
Klicken Sie im Hauptmenü auf Datei > Build-Einstellungen.
Wählen Sie Android aus und klicken Sie auf Plattform wechseln.
Unter Window > Google Play Games sollte ein neuer Menüpunkt angezeigt werden. Wenn nicht, aktualisieren Sie die Assets, indem Sie auf Assets > Aktualisieren klicken, und versuchen Sie dann noch einmal, die Build-Plattform festzulegen.
Klicken Sie im Unity Hub auf File > Build Settings > Player Settings > Other Settings (Datei > Build-Einstellungen > Player-Einstellungen > Weitere Einstellungen).
Wählen Sie im Feld Ziel-API-Level eine Version aus.
Geben Sie im Feld Scripting backend (Scripting-Backend)
IL2CPPein.Wählen Sie im Feld Zielarchitekturen einen Wert aus.
Notieren Sie sich den Paketnamen package_name.Sie können diese Informationen später verwenden.
Die Playereinstellungen in Ihrem Unity-Projekt.
Code für die automatische Anmeldung aktualisieren
Ersetzen Sie die Initialisierungsklasse PlayGamesClientConfiguration durch die Klasse PlayGamesPlatform.Instance.Authenticate().
Die Initialisierung und Aktivierung von
PlayGamesPlatform
ist nicht erforderlich. Durch Aufrufen von PlayGamesPlatform.Instance.Authenticate() wird das Ergebnis der automatischen Anmeldung abgerufen.
C#
Suchen Sie im Unity Hub nach den Dateien mit der Klasse PlayGamesClientConfiguration.
using GooglePlayGames;
using GooglePlayGames.BasicApi;
using UnityEngine.SocialPlatforms;
public void Start() {
PlayGamesClientConfiguration config =
new PlayGamesClientConfiguration.Builder()
// Enables saving game progress
.EnableSavedGames()
// Requests the email address of the player be available
// will bring up a prompt for consent
.RequestEmail()
// Requests a server auth code be generated so it can be passed to an
// associated backend server application and exchanged for an OAuth token
.RequestServerAuthCode(false)
// Requests an ID token be generated. This OAuth token can be used to
// identify the player to other services such as Firebase.
.RequestIdToken()
.Build();
PlayGamesPlatform.InitializeInstance(config);
// recommended for debugging:
PlayGamesPlatform.DebugLogEnabled = true;
// Activate the Google Play Games platform
PlayGamesPlatform.Activate();
}
Aktualisieren Sie ihn auf Folgendes:
using GooglePlayGames;
public void Start() {
PlayGamesPlatform.Instance.Authenticate(ProcessAuthentication);
}
internal void ProcessAuthentication(SignInStatus status) {
if (status == SignInStatus.Success) {
// Continue with Play Games Services
} else {
// Disable your integration with Play Games Services or show a login
// button to ask users to sign-in. Clicking it should call
// PlayGamesPlatform.Instance.ManuallyAuthenticate(ProcessAuthentication).
}
}
Social-Media-Plattform auswählen
Informationen zum Auswählen einer Social-Media-Plattform finden Sie unter Social-Media-Plattform auswählen.
Serverauthentifizierungscodes abrufen
Informationen zum Abrufen von serverseitigen Zugriffscodes finden Sie unter Serverauthentifizierungscodes abrufen.
Abmeldecode entfernen
Entfernen Sie den Code für die Abmeldung. Für die Play-Spieldienste ist keine Abmeldeschaltfläche im Spiel mehr erforderlich.
Entfernen Sie den im folgenden Beispiel gezeigten Code:
C#
// sign out
PlayGamesPlatform.Instance.SignOut();
Spiel testen
Testen Sie Ihr Spiel, um sicherzustellen, dass es wie vorgesehen funktioniert. Welche Tests Sie durchführen hängt von den Funktionen Ihres Spiels ab.
Im Folgenden finden Sie eine Liste mit häufig durchgeführten Tests.
Erfolgreiche Anmeldung
Die automatische Anmeldung funktioniert. Der Nutzer sollte beim Starten des Spiels in den Play-Spieldiensten angemeldet werden.
Das Begrüßungs-Pop-up wird angezeigt.
Beispiel für ein Begrüßungs-Pop-up (zum Vergrößern klicken) Meldungen über eine erfolgreiche Anmeldung werden angezeigt. Führen Sie im Terminal den folgenden Befehl aus:
adb logcat | grep com.google.android.
Im folgenden Beispiel sehen Sie eine Meldung über eine erfolgreiche Anmeldung:
[
$PlaylogGamesSignInAction$SignInPerformerSource@e1cdecc number=1 name=GAMES_SERVICE_BROKER>], returning true for shouldShowWelcomePopup. [CONTEXT service_id=1 ]
Einheitlichkeit der UI-Komponenten sicherstellen
Pop-ups, Bestenlisten und Erfolge werden in der Benutzeroberfläche der Play-Spieldienste auf verschiedenen Bildschirmgrößen und in verschiedenen Ausrichtungen korrekt und einheitlich angezeigt.
Die Abmeldeoption ist in der Benutzeroberfläche der Play-Spieldienste nicht sichtbar.
Prüfen Sie, ob Sie die Spieler-ID abrufen können und ob die serverseitigen Funktionen wie erwartet funktionieren.
Wenn das Spiel die serverseitige Authentifizierung verwendet, testen Sie den
requestServerSideAccess-Ablauf gründlich. Achten Sie darauf, dass der Server den Authentifizierungscode empfängt und ihn gegen ein Zugriffstoken eintauschen kann. Testen Sie sowohl Erfolgs- als auch Fehlerszenarien für Netzwerkfehler und ungültigeclient ID-Szenarien.
Wenn in Ihrem Spiel eine der folgenden Funktionen verwendet wurde, testen Sie sie, um sicherzustellen, dass sie nach der Migration genauso funktionieren wie zuvor:
- Bestenlisten: Punktzahlen senden und Bestenlisten ansehen. Prüfen Sie, ob die Namen der Spieler, die Rangfolge und die Punkte richtig angezeigt werden.
- Erfolge: Schalten Sie Erfolge frei und prüfen Sie, ob sie in der Play Spiele-Benutzeroberfläche richtig aufgezeichnet und angezeigt werden.
- Gespeicherte Spiele: Wenn das Spiel gespeicherte Spiele verwendet, muss das Speichern und Laden des Spielfortschritts einwandfrei funktionieren. Das ist besonders wichtig, wenn Sie die Funktion auf mehreren Geräten und nach App-Updates testen.
Aufgaben nach der Migration
Führen Sie die folgenden Schritte aus, nachdem Sie Ihr Spiel zum Games v2 SDK migriert haben.