Ce document explique comment migrer les jeux existants du SDK games v1 vers le SDK games v2. Le plug-in Play Jeux pour Unity, versions 10 et antérieures, utilise le SDK v1 de Jeux.
Avant de commencer
- Assurez-vous d'avoir déjà configuré la Play Console et installé Unity Hub.
Télécharger le plug-in Google Play Jeux pour Unity
Pour profiter des dernières fonctionnalités des services Play Jeux, téléchargez et installez la dernière version du plug-in. Téléchargez-le à partir du dépôt GitHub.
Supprimer l'ancien plug-in
Dans Unity Hub, supprimez les dossiers ou fichiers suivants.
Assets/GooglePlayGames Assets/GeneratedLocalRepo/GooglePlayGames Assets/Plugins/Android/GooglePlayGamesManifest.androidlib Assets/Plugins/Android
![Supprimez les dossiers mis en surbrillance de votre projet Unity.](https://developer.android.com/static/images/games/pgs/unityfolders.png?hl=fr)
Importer le nouveau plug-in dans votre projet Unity
Pour importer le plug-in dans votre projet Unity, procédez comme suit:
- Ouvrez votre projet de jeu.
- Dans Unity Hub, cliquez sur Assets > Import Package > Custom Package (Éléments > Importer un package > Package personnalisé) pour importer le fichier
unitypackage
téléchargé dans les éléments de votre projet. Assurez-vous que votre plate-forme de compilation est définie sur Android.
Dans le menu principal, cliquez sur File > Build Settings (Fichier > Paramètres de compilation).
Sélectionnez Android, puis cliquez sur Switch Platform (Changer de plate-forme).
Vous devriez voir un nouvel élément de menu sous Window > Google Play Games (Fenêtre > Google Play Jeux). Si ce n'est pas le cas, actualisez les éléments en cliquant sur Assets > Refresh (Assets > Actualiser), puis réessayez de définir la plate-forme de compilation.
Dans Unity Hub, cliquez sur File > Build Settings > Player Settings > Other Settings (Fichier > Paramètres de compilation > Paramètres du lecteur > Autres paramètres).
Dans le champ Niveau d'API cible, sélectionnez une version.
Dans le champ Scripting backend (Backend de script), saisissez
IL2CPP
.Dans la zone Architectures cibles, sélectionnez une valeur.
Notez le nom du package package_name.Vous pourrez utiliser ces informations plus tard.
Paramètres du joueur dans votre projet Unity.
Mettre à jour le code de connexion automatique
Remplacez la classe d'initialisation PlayGamesClientConfiguration
par la classe PlayGamesPlatform.Instance.Authenticate()
.
L'initialisation et l'activation de PlayGamesPlatform
ne sont pas obligatoires.
L'appel de PlayGamesPlatform.Instance.Authenticate()
extrait le résultat de la connexion automatique.
C#
Dans Unity Hub, recherchez les fichiers avec la classe 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();
}
Apportez-lui la modification suivante :
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).
}
}
Choisir une plate-forme de réseau social
Pour choisir une plate-forme de réseau social, consultez la section Choisir une plate-forme de réseau social.
Récupérer les codes d'authentification du serveur
Pour obtenir des codes d'accès côté serveur, consultez Récupérer les codes d'authentification du serveur.
Supprimer le code de déconnexion
Supprimez le code de déconnexion. Les services de jeux Play ne nécessitent plus de bouton de déconnexion dans le jeu.
Supprimez le code indiqué dans l'exemple suivant:
C#
// sign out
PlayGamesPlatform.Instance.SignOut();
Tester votre jeu
Testez votre jeu pour vous assurer qu'il fonctionne comme prévu. Les tests que vous effectuez dépendent des fonctionnalités de votre jeu.
Vous trouverez ci-dessous une liste des tests courants à exécuter.
Connexion établie
La connexion automatique fonctionne. L'utilisateur doit être connecté aux services de jeux Play au moment du lancement du jeu.
Le pop-up de bienvenue s'affiche.
Exemple de pop-up de bienvenue (cliquez pour agrandir). Les messages de journalisation de réussite s'affichent. Exécutez la commande suivante dans le terminal:
adb logcat | grep com.google.android.
Un message de journal réussi s'affiche dans l'exemple suivant:
[
$PlaylogGamesSignInAction$SignInPerformerSource@e1cdecc number=1 name=GAMES_SERVICE_BROKER>], returning true for shouldShowWelcomePopup. [CONTEXT service_id=1 ]
Assurez-vous de la cohérence des composants de l'interface utilisateur.
Les pop-ups, les classements et les succès s'affichent correctement et de manière cohérente sur différentes tailles et orientations d'écran dans l'interface utilisateur (UI) des services de jeux Play.
L'option de déconnexion n'est pas visible dans l'interface utilisateur des services de jeux Play.
Assurez-vous de pouvoir récupérer l'ID de joueur et, le cas échéant, que les fonctionnalités côté serveur fonctionnent comme prévu.
Si le jeu utilise l'authentification côté serveur, testez minutieusement le flux
requestServerSideAccess
. Assurez-vous que le serveur reçoit le code d'autorisation et peut l'échanger contre un jeton d'accès. Testez les scénarios de réussite et d'échec pour les erreurs réseau et les scénariosclient ID
non valides.
Si votre jeu utilisait l'une des fonctionnalités suivantes, testez-la pour vous assurer qu'elle fonctionne de la même manière qu'avant la migration:
- Classements: envoyez des scores et consultez les classements. Vérifiez que le classement et l'affichage des noms et des scores des joueurs sont corrects.
- Succès: déverrouillez des succès et vérifiez qu'ils sont correctement enregistrés et affichés dans l'interface utilisateur de Play Jeux.
- Jeux enregistrés: si le jeu utilise des jeux enregistrés, assurez-vous que l'enregistrement et le chargement de la progression du jeu fonctionnent parfaitement. Cela est particulièrement important pour effectuer des tests sur plusieurs appareils et après la mise à jour de l'application.
Tâches post-migration
Une fois la migration vers le SDK games v2 effectuée, procédez comme suit :