In diesem Dokument wird beschrieben, wie Sie vorhandene Spiele vom Games v1 SDK zum Games v2 SDK migrieren. Das Play Games-Plug-in für Unity, Version 10 und niedriger, verwendet das games v1 SDK.
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 neueste Plug-in-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
![Entfernen Sie die hervorgehobenen Ordner aus Ihrem Unity-Projekt.](https://developer.android.com/static/images/games/pgs/unityfolders.png?hl=de)
Neues Plug-in in Ihr Unity-Projekt importieren
So importierst du das Plug-in in dein Unity-Projekt:
- Öffnen Sie Ihr Spielprojekt.
- Klicken Sie im Unity Hub auf Assets > Import Package > Custom Package, um die heruntergeladene
unitypackage
-Datei in die Assets Ihres Projekts zu importieren. Die aktuelle Build-Plattform muss auf Android festgelegt sein.
Klicken Sie im Hauptmenü auf Datei > Build-Einstellungen.
Wählen Sie Android aus und klicken Sie auf Plattform wechseln.
Unter Fenster > Google Play Spiele sollte ein neuer Menüpunkt angezeigt werden. Falls nicht, aktualisieren Sie die Assets, indem Sie auf Assets > Aktualisieren klicken. Versuchen Sie dann noch einmal, die Build-Plattform festzulegen.
Klicken Sie im Unity Hub auf Datei > Build-Einstellungen > Player-Einstellungen > Weitere Einstellungen.
Wählen Sie im Feld Ziel-API-Ebene eine Version aus.
Geben Sie im Feld Scripting-Backend
IL2CPP
ein.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 deinem Unity-Projekt
Code für die automatische Anmeldung aktualisieren
Ersetzen Sie die PlayGamesClientConfiguration
-Initialisierungsklasse durch die PlayGamesPlatform.Instance.Authenticate()
-Klasse.
Die Initialisierung und Aktivierung von PlayGamesPlatform
ist nicht erforderlich.
Wenn du PlayGamesPlatform.Instance.Authenticate()
aufrufst, 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();
}
und aktualisieren Sie sie 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 Plattform für soziale Medien finden Sie unter Plattform für soziale Medien auswählen.
Serverauthentifizierungscodes abrufen
Informationen zum Abrufen serverseitiger Zugriffscodes finden Sie unter Serverauthentifizierungscodes abrufen.
Abmeldecode entfernen
Entfernen Sie den Code für die Abmeldung. Für die Play-Spieldienste ist keine Schaltfläche zum Abmelden 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 gängiger Tests.
Erfolgreiche Anmeldung
Die automatische Anmeldung funktioniert. Der Nutzer sollte beim Starten des Spiels in den Play-Spieldiensten angemeldet sein.
Das Willkommens-Pop-up wird angezeigt.
Beispiel für ein Begrüßungs-Pop-up (zum Vergrößern anklicken) Es werden Erfolgsmeldungen angezeigt. Führen Sie im Terminal den folgenden Befehl aus:
adb logcat | grep com.google.android.
Im folgenden Beispiel wird eine erfolgreiche Protokollmeldung angezeigt:
[
$PlaylogGamesSignInAction$SignInPerformerSource@e1cdecc number=1 name=GAMES_SERVICE_BROKER>], returning true for shouldShowWelcomePopup. [CONTEXT service_id=1 ]
Achten Sie auf Einheitlichkeit bei den UI-Komponenten.
Pop-ups, Bestenlisten und Erfolge werden in der Benutzeroberfläche der Play-Spieldienste korrekt und konsistent bei verschiedenen Bildschirmgrößen und -ausrichtungen angezeigt.
Die Option zum Abmelden ist in der Benutzeroberfläche der Play-Spieldienste nicht sichtbar.
Achte darauf, dass du die Player-ID abrufen kannst und dass die serverseitigen Funktionen gegebenenfalls wie erwartet funktionieren.
Wenn das Spiel die serverseitige Authentifizierung verwendet, testen Sie den
requestServerSideAccess
-Vorgang gründlich. Der Server muss den Autorisierungscode erhalten und gegen ein Zugriffstoken eintauschen können. Testen Sie sowohl Erfolgs- als auch Fehlerszenarien auf Netzwerkfehler und ungültigeclient ID
-Szenarien.
Wenn Sie in Ihrem Spiel eine der folgenden Funktionen verwendet haben, testen Sie sie, um sicherzustellen, dass sie wie vor der Migration funktionieren:
- Bestenlisten: Hier können Sie Ihre Punktzahlen einreichen und Bestenlisten aufrufen. Prüfen Sie, ob die Spielernamen und -ergebnisse korrekt angezeigt werden.
- Erfolge: Sie können Erfolge freischalten und prüfen, ob sie korrekt aufgezeichnet und in der Play Spiele-Benutzeroberfläche angezeigt werden.
- Gespeicherte Spiele: Wenn das Spiel gespeicherte Spiele verwendet, muss das Speichern und Laden des Spielfortschritts einwandfrei funktionieren. Dies ist besonders wichtig, wenn Sie auf mehreren Geräten und nach App-Updates testen.
Aufgaben nach der Migration
Führen Sie die folgenden Schritte aus, nachdem Sie zum Games v2 SDK migriert sind.