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 游戏 SDK 的 Google Play 服务依赖项添加到模块的 Gradle build 文件(通常为 app/build.gradle)中:

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

示例应用指南

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

第 1 步:下载示例应用

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

如需在 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 分。
      Don't get cocky, Kids 在任一模式下获得 9999 分数。
      我的天哪! 获得 1337 分。 将此成就设为隐藏成就。
      无聊 玩游戏 10 次。 将此成就设为增量成就,需要 10 个步骤才能达成。
      真的很无聊 玩游戏 100 次。 将此成就设置为增量成就,需要 100 个步骤才能解锁。
    3. 记录您创建的每个成就的 ID(一长串字母数字)。
    4. 配置适合您游戏的成就。如需了解详情,请参阅成就背后的概念如何在 Android 应用中实现成就功能
  6. 为 Type-a-Number Challenge 配置排行榜:
    1. 在 Google Play 管理中心内选择排行榜标签页。
    2. 添加两个示例排行榜:一个名为“容易获得高分”,另一个名为“高难度得分”。两个排行榜均应采用整数得分格式,不带小数位,排序类型为分数越高越好
    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。如需了解如何安装应用,请参阅在设备上运行您的应用