本开发者指南将介绍如何在 Android 上编译和运行使用 Google Play 游戏服务 API 的 C++ 游戏。在开始之前,请下载并配置以下要求:
- Android NDK,修订版 14 或更高版本。
- Android SDK v10 或更高版本以及最新版本的 Eclipse ADT。
- 设备必须搭载 Android 4.0(API 级别 14)或更高版本。
- 最新版本的 Google Play 服务 SDK。
本开发者指南使用 Android 原生开发套件 (NDK)。如果您不熟悉 NDK,请先参阅 NDK 文档和示例,然后再继续。
第 1 步:设置环境
- 下载 Android SDK 和 Android NDK,并将其解压缩到您的机器上。在您的环境中,将
SDK_ROOT
设置为 Android SDK 文件夹的位置,并将NDK_ROOT
设置为 Android NDK 文件夹的位置。 - 下载 C++ 示例游戏。本开发者指南将示例在您机器上的位置称为
SAMPLES_DIR
。 - 下载 Google Play 游戏服务 C++ SDK。将 SDK 解压缩到开发机器上。在您的环境中,将变量
NDK_MODULE_PATH
设置为指向gpg-cpp-sdk
目录上方的目录。您应该会得到以下目录结构:NDK_MODULE_PATH/ gpg-cpp-sdk/
- 打开 Eclipse。如果您尚未这样做,请依次点击 Preferences > Android > NDK,告知 Eclipse 您安装 NDK 的位置。
将 Google Play 服务库项目导入 Eclipse 工作区。
- 在 Eclipse 中,依次点击 File > Import > Android > Existing Android Code into Workspace。
- 选择
SDK_ROOT/extras/google/google_play_services/libproject/google-play-services_lib
,其中SDK_ROOT
是 Android SDK 的位置。 - 点击 Finish。
将极简示例项目导入 Eclipse 工作区。
- 在 Eclipse 中,依次点击 File > Import > Android > Existing Android Code into Workspace。
- 选择
SAMPLES_DIR/samples-android/minimalist
。 - 点击 Finish。
右键点击 MinimalistActivity 项目,然后点击属性。在 Android 下,向下滚动到 Library 部分,并确保正确引用了 google-play-services_lib 项目。如果没有,请从工作区中移除该引用,然后重新添加。
Eclipse 会自动编译项目的 Java 和 Android 源代码;不过,jni
文件夹中的原生代码需要单独编译。如需手动执行此操作,请前往 jni
文件夹并运行 ndk-build
。请务必在 jni
文件夹中进行任何更改后执行此操作。
您的项目现在应该可以编译,但尚无法运行。您必须先在 Google Play 管理中心内配置游戏。
第 2 步:在 Google Play 管理中心内设置游戏
在 Google Play 管理中心为您的游戏创建一个条目。此操作会为您的应用启用游戏服务,并创建 OAuth 2.0 客户端 ID(如果您尚无该 ID)。
- 按照设置 Google Play 游戏服务中所述的步骤为您的游戏创建一个条目。
- 在
AndroidManifest.xml
中,将<manifest>
标记的package
属性更改为您在设置 Google Play 管理中心时选择的软件包名称。进行此更改后,您可能需要修正整个项目中的某些引用(尤其是对生成的R
类的引用)。 - 打开
res/values/ids.xml
,然后在其中放置您的应用 ID。请注意,应用 ID 不同于客户端 ID;它是 Google Play 管理中心的游戏详情页面中游戏名称旁边的数字。
第 3 步:运行示例
如需运行此示例,您需要一部安装了 Google Play 服务的实体 Android 设备或模拟器:
- 运行
ndk-build
以编译原生代码。 - 在 Eclipse 中,依次点击 Run > Run As > Android Application,然后在设备上运行示例。
- 选段打开后,点按屏幕上的任意位置。您应该会看到 Google Play 游戏徽标。如果您已正确配置应用,系统会提示您登录。
可选:使用 Eclipse 自动构建
以下步骤展示了如何配置 Eclipse,以便在您更改 jni
文件夹中的文件时自动运行 ndk-build
。
- 右键点击 MinimalistActivity 项目,然后点击属性。在“Properties”窗口中,选择 Builders 窗格。
- 点击 New 以添加新的构建器,然后选择 Program 并点击 OK。
- 在 Name 字段中,输入“NDK Builder”。
- 在位置下,点击浏览文件系统,然后导航到
NDK_ROOT
目录并选择ndk-build
命令。 - 在 Working Directory(工作目录)下,点击 Browse Workspace(浏览工作区),然后选择 MinimalistActivity 项目文件夹。
- 点击刷新标签页。确保已选中 Refresh resources upon completion(完成后刷新资源)复选框。
- 选择特定资源单选按钮,然后点击指定资源。在随即显示的对话框中,选择 MinimalActivity 下的
jni
文件夹。 - 依次点击应用和确定,以完成构建器的创建。
现在,每次您在 jni
文件夹中修改文件时,Eclipse 都会运行 ndk-build
并将输出内容输出到 Eclipse 控制台。