Connectez facilement les utilisateurs à votre jeu tout en continuant à utiliser votre propre système de comptes. Avec les API Recall des services de jeux Play, vous pouvez associer des comptes de jeu à un compte Google Play Jeux. Ensuite, lorsqu'un utilisateur joue à votre jeu sur différents appareils (ou sur le même appareil après avoir réinstallé votre jeu), vous interrogez le compte de jeu associé et simplifiez le processus de connexion.
Si vous avez intégré les API Recall Android, ces API Recall devraient vous être familières. Toutes les intégrations côté serveur avec Recall des services de jeux Play peuvent être réutilisées par les titres PC, car elles sont identiques sur Android et PC.
Prérequis
Effectuez la configuration du SDK.
Consultez la présentation de l'API Recall des services de jeux Play.
Effectuez la configuration complète des services Google Play Games dans la Play Console.
Étape 1 : Ajoutez l'ID du projet de services Play Games dans le fichier manifeste
Une fois la configuration des services de jeux Play terminée dans la Play Console, votre jeu est associé à un ID de projet de services de jeux Play. À l'aide de cet ID de projet,
que vous trouverez sur la page de configuration des services de jeux Play dans la Play Console, mettez à jour
le fichier manifest.xml de votre jeu.
Exemple de contenu manifest.xml :
<?xml version="1.0" encoding="utf-8"?>
<?Manifest version="1">
<?Application>
<?PackageName>com.example.package<?/PackageName>
<?PlayGamesServices>
<?ProjectId>123456789<?/ProjectId>
<?/PlayGamesServices>
<?/Application>
<?/Manifest>
Étape 2 : Demandez l'accès à Recall lors de la connexion
Lorsque votre jeu gère un processus de connexion, par exemple en ajoutant un compte de jeu, demandez l'accès à Recall à l'aide de
GamesRecallClient::RequestRecallAccess().
Cet appel renvoie un ID de session utilisé par votre backend pour effectuer des appels côté serveur à Google afin d'associer et de dissocier vos comptes de jeu à un utilisateur des services de jeux Play.
auto promise = std::make_shared<std::promise<RecallAccessResult>>();
games_recall_client.RequestRecallAccess(params, [promise](RecallAccessResult result) {
promise->set_value(std::move(result));
});
auto recall_access_result = promise->get_future().get();
if (recall_access_result.ok()) {
auto recall_session_id = recall_access_result.value().recall_session_id;
// Pass the recall session ID to your backend game server so it can query
// for an existing linked in-game account.
// - If you discover an existing linked in-game account, continue to sign-in
// the in-game account. This provides a seamless cross-device sign-in
// experience.
// - If there is not an existing linked in-game account, when the user
// completes the sign-in using your in-game account system record the
// account linking with Play Games Services Recall. This helps to provide
// a seamless cross-device sign-in experience when the user returns on a
// different device or after re-installing your game on the same device.
} else {
// Handle the error
}
Étape 3 : Traitez l'ID de session Recall
Une fois que votre jeu dispose de l'ID de session Recall et qu'il l'a transmis à votre serveur de jeu backend, utilisez les API REST côté serveur des services de jeux Play pour :
- interroger les comptes de jeu associés existants à l'aide de
recall.retrieveTokens - ajouter ou mettre à jour des comptes de jeu associés à l'aide de
recall.linkPersona - supprimer des comptes de jeu associés à l'aide de
recall.unlinkPersona
Pour obtenir un guide plus détaillé sur l'intégration côté serveur, consultez la documentation expliquant comment utiliser l'API Recall dans votre serveur de jeu.