GameMaker:Studio 有 Android 导出模块,可以将游戏打包为 APK 安装包供 Android 系统的手机安装。

(GameMaker Studio 2 也可以,不过我没有去买谁叫我穷呢所以如何配置暂时未知)

这个教程我曾经在贴吧上发布过,这次我对这个教程进行了一些补充。(果然还是博客方便,到时候折腾出新的设置技巧还能接着在原文的基础上更新。)

贴吧地址:https://tieba.baidu.com/p/4692489224

打包前提

1,如果你想重新写游戏,或者只写手机平台游戏可直接看第 4 条。

2,如果你想在原有 GameMaker:Studio 桌面游戏项目的基础上修改为手机游戏,你需要取消所有键盘的控制并添加按钮改为鼠标左键控制(你以为谁都会在手机上接个键盘玩游戏吗?)

如果是 Android 平台,以下键盘键位可以映射 Android 键位,可以保留(就是满大街的返回,主页,菜单这样的三大件啦,魅族是个例外):

M (index 77, ord("M")):映射 Android 手机的菜单键。(不过看了 YellowAfterLife 这位 dalao 的博客,上面提到这个键位有时不好用)

Backspace (index 8, vk_backspace):映射 Android 手机的返回键。(幸运的是这个键位没有引起 BUG)

Control 键 (index 17, vk_control)(就是使用频率贼高的 Ctrl):映射 Android 手机的搜索键。(这个键在 Android 4.0 以后被废除,所以并没有什么卵用)

3,如果你想在原有 GameMaker 项目的基础上修改为手机游戏,请先解决部分函数的废除和使用插件引起的问题再将项目导入至 GameMaker:Studio(如果插件兼容 GMS 同时支持跨平台可以考虑留下)。

4,足够的硬盘容量。

5,准备好一部 Android 手机。

说了这么多,下面正题开始!:

准备 SDK

先准备好 JDK,Android SDK,Android NDK(可选),JDK 版本尽量选择 1.7 以上,如果使用的是 64 位系统请尽量选择 64 位版本的 JDK,这些都可以在百度上找到并下载(SDK 下载不到可以看下面的 API13)。

设置 JDK 环境变量

JDK 在安装时往往已经帮你设置好了环境变量,在 CMD 输入 java -version 确认即可。

如果没有输出版本信息,那么需要手动设置环境变量。

添加 JAVA_HOME 和 JRE_HOME 变量,值分别输入 JDK 目录和 JDK 目录下的 JRE 目录。

(JRE 已经随 JDK 一起安装,所以不用额外安装 JRE)

2

下载 Android SDK 以及 API13

由于不知道是不是谷歌抽了还是其它原因,API13 无法从 SDK Manager 直接下载. 。

所需 zip 已全部由百度云分享。(刚刚被度娘强行吞了一楼)

地址(内有 Android SDK):http://pan.baidu.com/s/1i4Iimjz

3

下载完成后先解压 android-sdk_r24.4.1-windows.zip 。

解压后打开 SDK Manager 。

更换镜像站

谷歌在中国被墙,肯定不能用默认的,接下来要先换源(你有 VPN 就跳过),这里推荐速度较快的源(tx 这时候突然变良心了)

在 Tools-Options 打开:

4

输入 tx 提供的镜像源:

地址:android-mirror.bugly.qq.com

端口:8080

设置好镜像源后需要勾上"Force https://... sources to be fetched using http://..."选项。

5

最后 Packages-Reload,等待即可。

除了腾讯官方镜像外,这里推荐几个国内的镜像站:

腾讯大师兄镜像:dsx.bugly.qq.com(HTTP 协议,登录后即可在配置信息得到域名和端口)(已关闭)

大连东软信息学院镜像:mirrors.neusoft.edu.cn 端口:80(HTTP 协议)

下载 SDK

每一个 Android 版本仅需下载 SDK Platform 以及 Google APIs 即可,然而我忘了 GameMaker:Studio 具体需要哪些版本的 SDK 了。

但是目前我所知道的是 API 版本不能低于 API 8(Android 2.2) 。

安装 API13

没错,就是这两货。

7

将 addon-google_apis-google-13.zip 复制到 SDK 目录下的 add-ons 文件夹并解压,选择解压到当前文件夹(WinRAR)或提取到当前目录(7-Zip)。

8

将 android-13.zip 复制到 SDK 目录下的 platforms 文件夹,做法同上。

9

2017-07-30 更新:如果你不想手动安装,可以在 Android SDK Manager 中勾选"Obsolete"后就可以看到 API13 的 SDK Platform 和 Google APIs,勾选安装即可。

设置 Android SDK 环境变量

在 Path 变量添加 SDK 目录下的 platform-tools 以及 tools 文件夹的路径,并保存。

10

在 CMD 输入 adb version 确认环境变量是否正确。

11

在 GameMaker:Studio 配置 SDK 路径

设置完毕后点击 Check Android SDK 检查 SDK 路径是否正确。

如果有下载 Android NDK,可点击 Check Android NDK 检查 NDK 路径是否正确。

1

生成 Keystore

在左边转到 Keystore,生成 Keystore,输入信息,英语稍微好一点的都知道怎么填吧。

输入完毕后先点击 Show Key Hash,然后点击 Generate 生成。

最后回到 SDK 点击 Check Android SDK 。

12

上面的 sdk 路径不能有中文(后果你懂的)

设置 Global Game Settings

设置完了 sdk 目录你以为就可以直接 Create Application 了吗?

必须在 Global Game Settings 设置一下,不然出现一堆奇奇怪怪的错误,boom 。

打上箭头的和有说明文字的必须更改。

这是 General 设置,部分设置无需更改,比如 Build Tools(Android 编译器版本),Support Libs(Android 支持库版本)。

按需更改:Target SDK(目标 SDK),Min SDK(最低支持 SDK),Compile SDK(编译 SDK)。

如果你使用的是旧版本的 GameMaker:Studio,比如 1.4.15xx 以及更早期的版本是没有比如编译器版本之类这么麻烦的设置的,可以直接设置箭头的和有说明文字的相关选项。

13

如需支持蓝牙手柄还需在 Permissions 勾选 BLUETOOTH 。

15

这里说明一下 GameMaker:Studio 中支持自定义的权限:

WRITE_EXTERNAL_STORAGE:允许内置存储读写。

READ_PHONE_STATE:允许读取手机状态。

ACCESS_NETWORK_STATE:网络状态。

INTERNET:允许访问网络(这个大部分人都知道)。

BLUETOOTH:允许连接匹配的蓝牙设备(同上)。

RECORD_AUDIO:允许录音。

设置图标

按照尺寸分别设置即可。

14

喜闻乐见的打包

保存,点击 Create Application,选好位置,导出即可。