登录

Google Play 游戏服务的登录机制用于验证玩家身份并为他们提供独特的 Android 游戏身份 (玩家 ID)。

此平台级玩家 ID 方便在多个设备上无缝继续游戏,从而在游戏和玩家之间建立一致的连接。与其他集中式系统相比,玩家更愿意使用此身份进行登录。

此外,登录过程为云存档系统提供可靠的标识符。玩家可以执行以下操作:

  • 在更改或重置设备后恢复游戏进度。
  • 在多个设备上参与游戏,从而能够在智能手机和平板电脑之间无缝切换。
  • 卸载并重新安装游戏。

开发者可以选择将玩家 ID 用作其自身云存档解决方案的密钥,或者使用内置的 存档游戏服务

Play 游戏服务 (PGS) 支持自动登录,这是一种零摩擦的玩家登录方式。

使用 Play 游戏服务登录是为玩家提供强大身份的有效方法,无需实现排行榜或存档游戏等附加功能。这种低摩擦方法使玩家更容易参与您的游戏并创建个性化体验。

Play 游戏服务 v2 SDK

Play 游戏服务 v2 SDK 在用户登录方面比 v1 提供了几项增强功能:

对于用户

  • 改进的用户体验:选择默认帐户后,用户会自动登录,无需遇到其他提示。

对于开发者

  • 简化的代码实现:客户端代码不再需要处理登录或注销流程。登录会在游戏启动时自动触发,帐户管理在操作系统设置中得到简化。

登录请求配额

使用 Play 游戏服务登录请求的每日配额。有关更多信息,请参阅 管理您的每日配额

推荐的登录流程

为了成功地将玩家登录到您的游戏中,请使用以下登录流程:

  1. 在游戏的启动过程中,自动登录 将被触发,尝试登录用户或创建一个新帐户。
  2. 如果自动登录不起作用或用户拒绝,则显示手动登录按钮,以防用户以后想要登录。

自动登录

当玩家启动启用了自动登录的游戏时,他们会在不与登录提示交互的情况下登录到游戏中。玩家可以在 Google Play 游戏应用中或游戏中显示的初始登录提示中启用自动登录。

Automatic sign-in prompt

多个登录服务

Play 游戏服务为 Android 玩家提供游戏身份,但它不必是与您的用户连接的唯一身份。您可以同时使用 Play 游戏服务、社交网络 ID 和您自己的游戏内 ID 系统登录玩家。

玩家 ID

玩家 ID 是 Play 游戏服务玩家帐户的标识符。您的游戏可以检索任何使用 Play 游戏服务登录登录到您的游戏的玩家的玩家 ID。您的游戏客户端、后端游戏服务器云存档服务 可以使用此 ID 安全地访问 Play 游戏服务的玩家数据。

当用户在多个设备上玩您的游戏时,玩家 ID 对用户而言是一致的。但是,它并非始终在游戏之间保持一致。有关更多信息,请参阅 新一代玩家 ID

OAuth 范围

Play 游戏服务依赖于 OAuth 系统 以允许玩家向您的游戏授予对其帐户的访问权限。Play 游戏服务对游戏具有唯一的范围 (games-lite),如果您的游戏使用存档游戏功能,则依赖于另一个范围 (drive.appdata)。存档游戏功能允许访问用户的 Google Drive 帐户,游戏数据存储在此处。

使用 Play 游戏服务 v2 SDK 时,您无法请求额外的 OAuth 范围。如果您需要额外的 OAuth 范围,我们建议您将 Google 登录 SDK 与 Play 游戏服务一起使用。

召回 API

召回 API 允许游戏通过将召回令牌存储在 Google 服务器上,来管理 PGS 用户及其游戏内帐户之间的链接。要了解有关启用此功能的更多信息,请参阅 在您的游戏中集成 PGS 召回 API

游戏客户端集成

在将登录集成到您的游戏项目中时,我们建议使用以下用户流程:

  1. 在游戏的启动过程中,自动登录 将启动并尝试登录用户或创建一个新帐户。

  2. 如果自动登录不起作用或用户拒绝,则显示手动登录按钮,以防用户以后想要登录。

有关在您的游戏项目中集成登录的信息,请参阅您的项目类型的入门指南:

游戏服务器集成

玩家使用登录服务登录到您的游戏后,您的后端游戏服务器可以直接与 Play 游戏服务服务器通信以访问玩家的 ID、个人资料、好友列表和其他 Play 游戏服务数据。这需要 Play 游戏服务 SDK 提供的服务器授权代码。您的服务器可以将授权代码与 Play 游戏服务的 REST API 一起使用,以安全地与 Play 游戏服务服务器通信。

有关更多信息,请参阅 Play 游戏服务的服务器端访问