Android 版 Play 游戏服务使用入门

欢迎使用 Google Play 游戏服务开发 Android 游戏!

Play 游戏 SDK 提供了跨平台 Google Play 游戏服务,让您可以轻松地在平板电脑和手机游戏中集成热门游戏功能,例如成就、排行榜和游戏存档。

本培训将指导您安装一款适用于 Android 的示例游戏应用,并快速上手构建您自己的 Android 游戏。Type-a-Number Challenge 示例应用演示了如何将成就和排行榜集成到您的游戏中。

准备工作

为了让您的应用做好准备,请完成以下部分中的步骤。

应用要满足的前提条件

确保您应用的 build 文件使用以下值:

  • minSdkVersion19 或更高版本
  • compileSdkVersion28 或更高版本

在 Google Play 管理中心内设置游戏

您可以在 Google Play 管理中心内管理游戏的 Google Play 游戏服务,以及配置用于对游戏进行授权和身份验证的元数据。如需了解详情,请参阅设置 Google Play 游戏服务

配置您的应用

在您的项目级 build.gradle 文件中,同时在 buildscriptallprojects 两个部分中添加 Google 的 Maven 制品库Maven 中央制品库

  buildscript {
    repositories {
      google()
      mavenCentral()
    }
  }

  allprojects {
    repositories {
      google()
      mavenCentral()
    }
  }

将 Play Games SDK 的 Google Play 服务依赖项添加到模块的 Gradle build 文件(通常为 app/build.gradle)中:

  dependencies {
    implementation 'com.google.android.gms:play-services-games:23.1.0'
  }

示例应用指南

本培训将指导您安装一款适用于 Android 的示例游戏应用,并快速上手构建您自己的 Android 游戏。Type-a-Number Challenge 示例应用演示了如何将成就和排行榜集成到您的游戏中。

第 1 步:下载示例应用

对于本开发者指南,您需要下载 Type-a-Number Challenge 示例应用。

如需下载示例应用并在 Android Studio 中设置该应用,请执行以下操作:

  1. 示例下载页面下载 Android 示例应用。
  2. 导入 android-basic-samples 项目。此项目包含 TypeANumber 及其他 Android 游戏示例。如需在 Android Studio 中执行此操作,请执行以下操作:
    1. 依次点击 File > Import Project
    2. 在开发机器上找到下载 android-basic-samples 的目录。选择文件 android-basic-samples/build.gradle,然后点击 OK
  3. TypeANumber 模块中,打开 AndroidManifest.xml 并将软件包名称从 com.google.example.games.tanc 更改为您自己的其他软件包名称。新软件包名称不得以 com.googlecom.examplecom.android 开头。

第 2 步:在 Google Play 管理中心内设置游戏

在 Google Play 管理中心内,您可以管理游戏的 Google Play 游戏服务,以及配置用于对游戏进行授权和身份验证的元数据。

如需在 Google Play 管理中心内设置示例游戏,请执行以下操作:

  1. 使用您的网络浏览器访问 Google Play 管理中心,然后登录账号。如果您之前未注册 Google Play 管理中心,系统会提示您进行注册。
  2. 按照以下说明将游戏添加到 Google Play 管理中心
    1. 当系统询问您是否在应用中使用 Google API 时,选择我尚未在自己的游戏中使用任何 Google API
    2. 在本开发者指南中,您可以使用自己的游戏详细信息填写表单。为方便起见,您可以使用下载页面中提供的占位图标和屏幕截图。
  3. 按照以下说明为您的 Android 应用生成 OAuth 2.0 客户端 ID
    1. 关联 Android 应用时,请务必指定您之前在重命名示例软件包时使用的确切软件包名称。
    2. 如果您还没有密钥存储区和签名证书,可以使用 Android Studio 中的 Generate Signed APK Wizard 生成密钥库和签名证书。如需了解如何运行 Generate Signed APK Wizard,请参阅在 Android Studio 中为应用签名
  4. 请务必记录以下信息,以供日后使用:
    1. 您的应用 ID:这是位于客户端 ID 开头部分的一个字符串,仅由数字组成(通常为 12 位或更多数字)。
    2. 您的签名证书:请记下您在设置 API 访问权限时使用的证书(您提供的 SHA1 指纹的证书)。在测试或发布应用时,也应使用同一证书为应用签名。
  5. 为 Type-a-Number Challenge 配置成就:
    1. 在 Google Play 管理中心内选择成就标签页。
    2. 添加以下示例成就:
      名称 说明 特殊说明
      经典风 获取一个质数的分数。
      Humble 请求 0 分。
      别傻了,孩子 请求在任一模式下的得分为 9999。
      天哪,太好了! 获得 1337 分数。 将此成就设为隐藏成就。
      无聊 玩游戏 10 次。 将此成就设置为增量成就,需要 10 个步骤才能解锁。
      真的很无聊 玩游戏 100 次。 将此成就设置为增量成就,需要通过 100 个步骤才能解锁。
    3. 记录您所创建的每项成就的 ID(一长串字母数字)。
    4. 配置与您的游戏相称的成就。如需了解详情,请参阅成就背后的概念以及如何在 Android 应用中实现成就功能
  6. 为 Type-a-Number Challenge 配置排行榜:
    1. 在 Google Play 管理中心内选择排行榜标签页。
    2. 添加两个示例排行榜:一个名为“Easy High Scores”,另一个名为“Hard High Scores”。两个排行榜均应使用整数得分格式,并保留 0 位小数,排序类型均为 Larger is best
    3. 记录您所创建的每个排行榜的 ID(一长串字母数字)。
    4. 配置适合您的游戏的排行榜。如需了解详情,请参阅排行榜背后的概念以及如何在 Android 应用中实现排行榜
  7. 为您的游戏添加测试帐号。 只有尚未在 Google Play 管理中心内发布的应用才需要执行此步骤。在应用发布之前,只有 Google Play 管理中心中列出的测试账号可以登录。但是,一旦发布了应用,所有人都可以登录。

第 3 步:修改代码

如需运行游戏,您需要在 Android 项目中将应用 ID 配置为一项资源。您还需要在 AndroidManifest.xml 中添加游戏元数据。

  1. 打开 res/values/ids.xml 并替换占位符 ID。如果您是从头开始创建 Android 游戏,需要先创建此文件。
    1. app_id 资源中指定您的应用 ID。
    2. 指定您之前在相应的 achievement_* 资源中创建的每个成就 ID。
    3. 指定您之前在相应的 leaderboard_* 资源中创建的每个排行榜 ID。
  2. 打开 AndroidManifest.xml,然后在 <manifest> 元素的 package 属性中输入软件包名称。如果您是从头开始创建 Android 游戏,还要务必在 <application> 元素中添加以下代码:
    <meta-data android:name="com.google.android.gms.games.APP_ID"
        android:value="@string/app_id" />
    <meta-data android:name="com.google.android.gms.version"
       android:value="@integer/google_play_services_version"/>
    

第 4 步:测试游戏

为确保 Google Play 游戏服务在您的游戏中正常运行,请在 Google Play 上发布应用之前对其进行测试。

如需在实体测试设备上运行游戏,请执行以下操作:

  1. 确认您已设置用于登录应用的测试帐号(如第 2 步中所述)。
  2. 导出 APK 并使用您在 Google Play 管理中心内设置项目时所用的证书为其签名。如需在 Android Studio 中导出已签名的 APK,请依次点击 Build > Generate Signed APK
  3. 使用 adb 工具在您的实体测试设备上安装已签名的 APK。 如需了解如何安装应用,请参阅在设备上运行