开通 Google 登录
本文将介绍如何开通 Google 登录以及 Google 登录所需要的配置项。
创建项目
要使用 Google 登录功能,需要在 Google API 控制台创建项目并添加「凭据」,其 OAuth client id 作为 SDK 登录的配置项。
配置 Google API 控制台项目
一. 项目已接入 Firebase
在项目已经接入 Firebase 的情况下,在项目创建的开始会先需要输入项目名称,而如果已在 Google Cloud Platform (以下简称 GCP) 创建好项目,会提示可以选择对应的项目名称。
如果输入新的项目名称时会在 GCP 创建对应名称的 GCP 项目。
创建完 Firebase 项目之后需要创建对应的应用,如 Android、iOS 应用。
请注意,在需要使用 Google Sign-in 功能时,创建 Android 应用时需要添加签名文件中的 SHA-1 证书指纹
,或者在创建完应用之后在 项目设置 -> 常规 -> 您的应用 -> SDK 设置和配置
中添加 SHA-1 证书指纹
。
添加完之后打开 GCP 控制台,选择对应的项目点击 API 和服务 tab 栏选择 凭据
就能看到 Firebase 创建完之后自动生成的所需要的 OAuth Client ID,
其中 Web 应用的 client id 为 Android SDK 进行 Google 登录授权所需要的 OAuth Client ID,请将此 ID 配置到 XDConfig.json
文件中的 google
的 CLIENT_ID_FOR_ANDROID
下。
二. 项目未接入 Firebase
当项目未接入 Firebase 想单独接入 Google 登录时,需要单独配置 GCP 项目才能正常使用 Google 登录功能。
- 打开 GCP 控制台,创建项目;
- 添加项目名称,选择对应的组织;
- 创建完项目之后选择项目;
- 选中
API和服务
tab 栏中的凭据
选项;
创建 OAuth 客户端 ID,选择对应的应用平台进行创建;
备注请注意,在创建「凭据」之前需配置「OAuth 同意屏幕」选项,配置该选项请参见 OAuth 同意屏幕配置。
请注意,在选择 Android 应用创建时需要填写 SHA-1 证书指纹,而进行 Android 端的 Google 授权登录需要使用到 Web 应用的 OAuth Client ID,所以需要创建两个 Client ID,这两个 ID 无关先后创建,只需保证 Android 应用客户端 ID 创建时填写打包的签名证书中的 SHA-1 证书指纹即可。
请将此 Web 应用的 OAuth Client ID 配置到
XDConfig.json
文件中的google
的CLIENT_ID_FOR_ANDROID
下。如需要在 PC 端使用 Google 登录,还需要在 Web 应用内配置授权的重定向 URI
https://xdsdk-intnl-6.xd.com/api/login/v1/auth/google/authorization_code/
和一个授权的 JavaScript 来源https://login-xdsdk.xd.com
,一定要记得点击保存,否则不会生效。
配置 OAuth 同意屏幕
当使用 OAuth 2.0 进行授权时,应用会请求对某个 Google 帐号中一个或多个访问范围的授权。Google 向用户显示同意屏幕,其中包括项目摘要信息及其政策和请求的访问范围。 除 Firebase 自动创建的 OAuth Client ID 之外,在 GCP 后台中手动创建凭据时需要先配置「OAuth 同意屏幕」。
选择您想要配置和注册应用(包括目标用户)的方式。您只能将一个应用与您的项目关联。
可选项为 内部 和 外部:
- 内部选项相当于 Google 授权仅在内部进行登录测试使用(不过非 Google Workspace 用户无法选择内部选项);
- 外部选项会先以测试模式进行使用,当准备就绪时可推至生产环境进行正式使用。
进行应用信息等信息的配置。
后续其他配置(如可添加 Google 帐户中的私有用户数据配置、测试用户等相关配置)。
XDSDK 开通 Google 登录
请在创建完之后将对应平台的 OAuth Client ID(iOS、Android(使用 Web 应用 Client ID)) 文件给到 XDSDK 项管,进行 Google 登录的开通,开通之后游戏便可自行接入。
提示:iOS 端为 PLIST 文件,格式如下图所示,需要配置的为 CLIENT_ID
。
提示:Android(使用 Web 端)为 JSON 文件,格式如下图所示,需要配置的为 client_id
和 client_secret
。