Connexion

La fonctionnalité de connexion aux services de jeux Play vous permet d'obtenir l'identité de jeu d'un joueur. Cette identité de joueur Android est spécifique au jeu au niveau de la plate-forme. Elle permet d'établir une relation entre votre jeu et le joueur. Les joueurs acceptent plus volontiers d'utiliser cette identité pour se connecter que d'autres systèmes centralisés.

De plus, la fonctionnalité de connexion vous fournit un identifiant fort et cohérent que vous pouvez utiliser comme clé d'accès à un système d'enregistrement dans le cloud. Très apprécié des joueurs, l'enregistrement dans le cloud leur permet d'effectuer ce qui suit :

  • Reprendre le jeu là où ils l'ont interrompu s'ils réinitialisent leur appareil ou en changent
  • Utiliser le jeu sur plusieurs appareils (par exemple, sur un autre téléphone ou sur un Chromebook)
  • Désinstaller le jeu et le réinstaller ultérieurement

Vous pouvez utiliser l'identité des services de jeux Play comme clé pour votre propre solution d'enregistrement dans le cloud, ou vous pouvez utiliser le service Jeux enregistrés accessible sans frais.

Les services de jeux Play (PGS) sont compatibles avec la connexion automatique, une solution simple pour se connecter aux joueurs, ainsi qu'avec la connexion manuelle, qui se fait en un clic. Ce document décrit ces différentes méthodes de connexion.

Flux de connexion recommandé

Pour connecter les joueurs à votre jeu, utilisez le flux de connexion suivant :

  1. Pendant la séquence de démarrage du jeu, essayez la connexion automatique pour connecter automatiquement le joueur.
  2. Si la connexion automatique ne fonctionne pas et que l'appareil de l'utilisateur est en ligne, essayez la connexion manuelle.
  3. Si la connexion manuelle est refusée, n'oubliez pas le choix de l'utilisateur et n'affichez plus la connexion manuelle, mais continuez à essayer la connexion automatique au démarrage.

Vous devez également vous assurer que les utilisateurs peuvent se connecter à votre jeu avec leur compte de services Play Jeux grâce à un bouton dédié facile à trouver.

Connexion automatique

La connexion automatique permet aux utilisateurs de se connecter à votre jeu sans aucun problème, c'est automatique ! Si votre jeu demande à l'utilisateur de se connecter et que le paramètre de connexion automatique est activé (dans l'application Google Play Jeux), vous recevrez ses identifiants d'identité PGS, et l'utilisateur verra l'expérience de connexion PGS.

Les utilisateurs peuvent configurer le paramètre de connexion automatique selon leurs préférences. Ils peuvent choisir de se connecter automatiquement à tous les jeux ou d'être invités à se connecter à chaque fois.

Connexion automatique

Connexion manuelle

Si un utilisateur ne se connecte pas automatiquement au jeu, vous pouvez lui demander de se connecter manuellement. Les utilisateurs peuvent se connecter en un clic à partir d'une boîte de dialogue affichée en haut de votre jeu.

Connexion manuelle

Autoriser les fenêtres pop-up PGS pour une expérience de connexion correcte

Lorsque les PGS sont utilisés, les utilisateurs doivent savoir qu'ils sont connectés. Pour ce faire, l'expérience de connexion PGS doit être affichée.

Pour afficher l'expérience de connexion, appelez la méthode setViewForPopups() de la classe GamesClient au démarrage du jeu. Cette approche est essentielle pour proposer une expérience utilisateur correcte.

Niveaux d'accès OAuth et services de jeux Play

Les services de jeux Play s'appuient sur le système OAuth pour autoriser les utilisateurs à donner à votre jeu l'accès à leur compte. Les champs d'application OAuth sont des autorisations que les développeurs peuvent demander. Si ces autorisations sont accordées, votre jeu peut appeler certaines API au nom de l'utilisateur et vous donner accès à certaines parties de son compte Google.

Les services de jeux Play ont un champ d'application unique pour les jeux (games-lite) et reposent sur un autre champ d'application (drive.app_data) si votre jeu utilise la fonctionnalité de jeux enregistrés. La fonctionnalité Jeux enregistrés donne accès au compte Google Drive de l'utilisateur, où sont stockées les données de jeu.

Votre jeu peut demander n'importe quel niveau d'accès dont vous avez besoin pour créer une expérience de jeu de qualité pour vos utilisateurs. Votre jeu peut demander tous les champs d'application dont il a besoin dans un seul lot, ce qui limite le nombre de demandes d'accès au compte Google. Cependant, cette approche présente un inconvénient majeur. Si vous demandez plus de champs d'application que les PGS, la connexion automatique ne peut pas aboutir. La connexion automatique est le meilleur moyen de connecter les joueurs à votre jeu.

Il est recommandé d'utiliser des requêtes de portée incrémentielle. Votre jeu doit d'abord demander des champs d'application réservés aux PGS dans la requête initiale, puis demander d'autres champs d'application séparément au moment le plus opportun.

L'accès OAuth est accordé sur un écran différent pour chaque champ d'application. Cela permet aux utilisateurs de choisir de manière précise les champs d'application auxquels ils souhaitent accorder l'accès. En utilisant la connexion automatique avec les champs d'application PGS uniquement, les utilisateurs n'ont pas besoin d'interagir avec des invites OAuth, ce qui réduit les problèmes de connexion.

Compatibilité avec plusieurs méthodes de connexion

Le PGS fournit une identité de jeu aux joueurs Android, mais il n'est pas nécessaire qu'il soit la seule identité connectée à vos utilisateurs. Vous pouvez connecter simultanément des joueurs à l'aide des services de jeux Play, un ID de réseau social et votre propre système d'identification dans le jeu. Chaque système offre une valeur unique pour vous et vos joueurs, et tous peuvent fonctionner ensemble pour offrir une expérience optimale aux joueurs Android.

Récupérer et valider l'identité du joueur de manière sécurisée pour l'intégration backend

Vous pouvez demander un code d'autorisation pour permettre à votre serveur de communiquer directement avec les serveurs des services de jeux Play via l'API REST sous l'autorité du joueur connecté. Cela permet un accès direct à l'ID du joueur, à son profil et à d'autres informations (comme la liste d'amis, si l'accès à celle-ci est autorisé). Si vous stockez des ID de joueur, des ID d'ami ou d'autres données associées dans votre backend, cette méthode doit être utilisée pour éliminer le risque de manipulation de ces champs côté appareil.

En outre, pour certains jeux plus anciens et certains joueurs, l'ID de joueur renvoyé par le SDK Android peut être différent de celui que les autres joueurs voient pour le joueur en question dans le même jeu ; ceci est particulièrement pertinent pour la liste d'amis. En revanche, le player_id renvoyé dans l'API REST est toujours cohérent et correspond toujours à l'ID visible par les autres joueurs.

Pour en savoir plus, consultez Accès hors connexion et la documentation sur l'API REST.

Implémentation client

Pour découvrir comment implémenter la connexion sous Android, consultez Se connecter dans les jeux Android.