跳到主要内容

Web

本文旨在介绍如何设置 Google 身份验证,让您的网页可以使用 Player Network 登录鉴权服务通过 Google 渠道登录。

前提条件

在 Google 开发者平台上设置您的游戏
注意

对于 IEGG 项目,请联系 [miaruan (Ruan Mingjun)] 进行 Google 应用程序的注册和配置。

1. 创建 Google 应用

按照提示在 Google Play Console 上注册账号。

说明

Google 收取25美元的服务费。请提前准备好信用卡。

  1. 进入 Google Play Console

  2. All apps 页面,点击 Create app,创建游戏应用程序。

    图片:Google - create a game app

  3. 输入应用程序信息。

    图片:Google - enter information for the app

2. 设置 Play 游戏服务

设置 Play 游戏服务,以管理游戏元数据并自动执行游戏制作和分发任务。

1. 创建 Play 游戏服务项目
  1. 进入 Google Play Console

  2. 在左侧导航栏中,选择 Grow > Play Games Services > Setup and management > Configuration

  3. Does your game already use Google APIs 下,选择对应的选项来创建 Play 游戏服务项目。

    图片:Google service creation

  4. Properties 部分,点击 Edit Properties

  5. 输入游戏基本信息,然后点击 Save changes

    图片:Google basic game information

2. 添加一个凭证,将 OAuth 2.0 客户端 ID 与游戏连接起
  1. 进入 Google Cloud Platform

  2. 在左侧导航栏中,点击 OAuth consent screen

  3. 按照说明设置 OAuth OAuth consent screen。

    图片:Google, consent to the agreement

  4. 在左侧导航栏上点击 Credentials

  5. Credentials 页面,选择 CREATE CREDENTIALS > OAuth Client ID,创建 OAuth 客户端 ID。

    图片:Google, create OAuth clients

  6. Application type 列表中,点击 Web

  7. 输入所需的信息。
    在网页应用详情页面的 Authorized redirect URLs 部分,添加 https://test-common-web.intlgame.com/jssdk/googlelogincallback.htmlhttps://common-web.intlgame.com/jssdk/googlelogincallback.html

    图片:Windows redirect URIs

  8. 点击 SAVE 完成配置。

  9. 转到 Web 应用程序的详细信息页面。

    图片:Google, Web client details

  10. 找到客户 ID 和客户密文,并将其输入 Player Network 控制台的游戏配置中。

    图片:Google, Web client Client ID and Secret

  11. 添加登录测试用户。

    图片:Google, add test users

3. 配置 API 访问权限
  1. 进入 Google Cloud Platform

  2. 在左侧导航栏中,选择 Settings > Developer account > API access

    图片:Google API console

  3. 在 API 访问页面上,接受服务条款。

  4. 点击相应项目右侧的 Link,将 Google Play Console 链接到 API 项目。

4. 添加游戏测试人员
  1. 进入 Google Play Console

  2. 在左侧导航栏中,选择 Grow > Play Games Services > Setup and management > Testers

  3. Testers 选项卡中,点击 Add testers 为您的游戏添加测试人员。

    图片:Google testers

注意

在游戏应用程序发布之前,只有测试人员可以登录。请确保应用程序处于测试状态.

5. 配置成就和排行榜

在 Gaming Services 画面中找到"成就"和"排行榜"功能,并根据需要进行配置。

图片:Google leaderboard

3. 检索应用程序信息

查找 Google 应用程序信息,配置 Player Network SDK 并将 Google 添加为 Player Network 上的登录渠道。

获取 Google API ID

Google云端平台 面板访问信息中心。Google API ID 就是此页面上的 Project No.

图片:Google ID

获取 Client ID 和 Client secret

按照 添加凭证以将 OAuth 2.0 客户端 ID 与游戏链接 中的步骤获取应用程序信息。

图片:Google Web Client ID and Secret

  1. 获取 Player Network 控制台登录账号
  2. 为游戏创建新项目,或加入已有项目
  3. 在 Player Network 控制台添加 Google 为业务的登录鉴权方式
注意

更多关于其他第三方渠道接入 SDK 的信息,请参见 JavaScript SDK

步骤1:引⼊ JavaScript SDK

警告

项目联调阶段可以引⼊ SDK 联调版本包,该包仅用于集成测试。项目上线须引⼊ SDK 正式版本包。

目前已支持 npm 包方式和 CDN 方式。

$ npm install @intlsdk/account-api
// SDK 联调版本包
<script src="https://test-common-web.intlgame.com/sdk-cdn/account-api/latest/index.umd.js"></script>
// SDK 正式版本包
<script src="https://common-web.intlgame.com/sdk-cdn/account-api/latest/index.umd.js"></script>

步骤2:使用 SDK

警告

在集成测试时,将 env 设置为测试环境;项目上线时,将 env 设置为相应的正式环境。

const accountApi = new IntlgameAccountApi({
env: "test", // SDK environment
gameID: 11,
});
参数类型描述备注
envstringSDK 环境
更多信息,请参见 获取部署集群信息
必填
gameIDnumberPlayer Network 游戏唯一标识 ID必填

步骤3:实现网页登录

实例化 accountApi 组件后,调用 thirdAuthorize 接口申请 Google 渠道的登录授权令牌。

accountApi.thirdAuthorize({
third_type: 'google',
}).then(
(res) => {
console.log(res);
});

当 Google 返回登录授权令牌后,调用 intlAuthorize 接口获取 Player Network SDK OpenID 和令牌登录网站。

accountApi.intlAuthorize({
third_type: 'google',
channel_info: {
code: "EAAI2lTrXAZBwBAC"
}
}).then(
(res) => {
console.log(res);
});

调用 intlLogout 接口登出网站。

accountApi.intlLogout({
token: '4567xsdfsd',
openid: 'xxxxxxxx',
channel_id: 6,
}).then(
(res) => {
console.log(res);
});