安装配置原生开发环境
要发布到 Android 平台,需要安装以下全部开发环境依赖。
如果您没有发布到 Android 平台的计划,或您的操作系统上已经有完整的 Android 开发环境,可以跳过这个部分。
从 v1.2.2 开始,默认的 Android 项目模板将指定 sdk platform 版本作为默认的 target,详情可见 。
如果编译 Android 工程时遇到 ‘未找到 android-10’ 之类的报错,可以下载单独的 Android SDK platform 包 android-10.zip,并解压到您的 Android SDK 根目录下的 platforms
目录里,和其他 android-xx
目录并列。
如果需要更改 target 的 API Level,可以修改原生引擎目录下 cocos/platform/android/java/project.properties
文件中的
将 android-10
修改为其他您需要的 API Level。
从以下链接下载和操作系统一致的 Android SDK 和 NDK:
下载之后解压到任意位置,我们之后需要设置 Android SDK 和 NDK 的路径,请记住以上文件的解压位置。
是一种用来构建软件的 Java 程序库和可执行文件。我们在构建 Android 平台项目时需要这个软件的支持。
之前前往 Apache Ant 的下载链接:
选择稳定版的 压缩包并下载,下载完成后解压到任意目录,之后我们在进行设置时需要选择这个目录。
编译 Android 工程需要本地电脑上有完整的 Java SDK 工具,请到以下地址下载:
下载时注意选择和本机匹配的操作系统和架构,下载完成后运行安装程序即可。
注意:安装完成后请在命令行中确认 java
命令是有效的,否则请参考下文手动添加 java
可执行文件所在目录到您的环境变量中。
Cocos2d-x 自带的编译工具 Cocos Console 需要以下运行环境:
- Python 2.7.5+,,注意不要下载 Python 3.x 版本。
- Windows 下需要安装 Visual Studio 2013 或 2015 社区版,下载页
- Mac 下需要安装 Xcode 和命令行工具,
下载安装好开发环境依赖后,让我们回到 Cocos Creator 中配置构建发布原生平台的环境路径。在主菜单中选择 文件/偏好设置
,打开偏好设置窗口:
我们在这里需要配置以下三个路径:
- NDK,选择刚才下载并解压后的 NDK 路径,不需要编译 Android 平台的话这里可以跳过
- Android SDK,选择刚才下载并解压后的 Android SDK 路径,不需要编译 Android 平台的话这里可以跳过
- ANT,请选择前面下载并解压完成的 Apache Ant 路径,选定的路径中应该包括一个名叫
ant
的可执行文件。
配置完成后点击 保存 按钮,保存并关闭窗口。
注意:这里的配置会在编译 原生工程 的时候生效。如果没有生效(一些 Mac 机器有可能出现这个情况),可能需要您尝试到 系统环境变量 设置这些值:COCOS_CONSOLE_ROOT, ANT_ROOT, NDK_ROOT, ANDROID_SDK_ROOT。
由于在公测版中收到了很多原生打包的问题反馈,这里补充一些可能的问题原因。
检查 Xcode 和 Visual Studio
打包 Mac 版本和 iOS 版本需要 Xcode 支持。打包 Windows 版本需要安装 Visual Studio,同时在安装 Visual Studio 时,默认并没有勾选 C++ 编译组件。如果没有安装,则需要重新安装并选择 C++ 相关编译组件。
-
请使用 NDK r10c 以上的版本,推荐 r10e。
Windows 平台需要检查 JAVA_HOME 环境变量
如果使用 Windows 平台,请确认你的环境变量中包含 JAVA_HOME,可以通过右键点击我的电脑,选择属性,打开高级选项卡中来查看和修改环境变量。Windows 平台可能需要重启电脑才会生效。
检查 JAVA 环境
在 Mac 终端或者 Windows 命令行工具中输入下面代码来查看:
如果显示为 JAVA SE 则没有问题,如果系统中使用的是 JRE,则需要安装 。
包名问题
检查构建发布面板中的包名,包含空格,
-
等都是非法的包名。Android 6.0 SDK 的支持问题
Android 6.0 SDK 去除了 Cocos2d-x 依赖的 HttpClient 库,所以会导致编译失败。目前的解决方案是:
- 找到 Android SDK 目录下的 HttpClient 库:
platforms/android-23/optional/org.apache.http.legacy.jar
。 - 如果使用源码引擎模版,需要拷贝到原生编译目录下的
jsb/frameworks/cocos2d-x/cocos/platform/android/java/libs/
目录下。如果使用预编译库引擎模版,需要拷贝到原生编译目录下的jsb/frameworks/runtime-src/proj.android/jars/
目录下。
- 找到 Android SDK 目录下的 HttpClient 库:
Android 编译成功,但运行时提示
请检查 NDK 和 Android SDK 的架构和版本是否和测试用的 Android 系统相对应,另外可以尝试使用本文章下载的 NDK 和 Android SDK 来测试。
现在您已经完成了全部原生开发环境的配置,接下来请继续前往 打包发布原生平台 说明文档。