之前解决了项目构建的问题,下一步就是编译了,这一步浪费了我不少时间,一直报错,报错信息。官网是用Mac机器截图做的文档,这里为后面的坑埋下伏笔。

先看官网的配置步骤:

  • 验证Java 环境是否安装
  • 安装Android Studio(creator 从v1.10开始就不支持Eclipse的ANT构建)
    • 安装API Levle 16、22、25三个版本
    • 最新的build tools版本
    • 勾选Android SDK Platform-Tools,Android SDK Tools 和 Android Support Library(这里的Android Support Library在Android Studio 3.1.2 的SDK Manager中并没有找到,所以我勾选了Android Support Repository)
    • 勾选NDK,确保14以上(官方推荐使用r16),这里我使用的最新的17
    • Python 2.7.5+,这里注意不要下载Python3版本
    • 需要C++的编译环境,VS2015或者2017
  • 打开CocosCreator设置原生开发环境,将NDK和SDK路径填写进去
    • 这里官网标注了一个注意事项:(因为我是win系统,就没注意这里)
      • 这里这里的配置会在编译 原生工程 的时候生效。如果没有生效(一些 Mac 机器有可能出现这个情况),可能需要您尝试到 系统环境变量 设置这些值:COCOS_CONSOLE_ROOT, NDK_ROOT, ANDROID_SDK_ROOT

到目前为止,以上就是编译所需要做的准备步骤。

编译遇到的第一个问题:太慢,几乎不动,查看日志发现连接谷歌下载文件了,因此连接VPN解决。

第二个问题:编译的时候出现报错:报错信息

第一时间看开发文档安装配置原生开发环境

做了以下的修改:仔细检查SDK和NDK版本,发现官网要求的Android Support Library在Android Studio 3.1.2 的SDK Manager中并没有,而我勾选的是Android Support Repository(两者区别),本着官方文档为准的原则手动下载library 23安装上去

结果:仍然报错

只好去论坛搜索,发现这样的问题不少,基本有这几个原因:

  1. Python版本不对
  2. SDK、NDK版本配置不对
  3. 项目路径太深

挨个对比,第一个是对的,第二个也没发现问题,第三个,使用了大神补丁 修复ndk路径过长问题

结果:仍然报错

继续搜索,发现这样另一个解决路径过长问题的方案——将项目移动至盘符根目录

结果:报错

最后没有办法,再次打开官方文档,仔细阅读。发现一个注意事项:

注意:这里的配置会在编译 原生工程 的时候生效。如果没有生效(一些 Mac 机器有可能出现这个情况),可能需要您尝试到 系统环境变量 设置这些值:COCOS_CONSOLE_ROOT, NDK_ROOT, ANDROID_SDK_ROOT。

因为我是Windows系统,就一直忽略了这段话,最后实在没办法,只能抱着试试看的态度,将这三个变量名添加进系统环境变量中,重新打开程序构建编译。

结果:漫长的等待,打包成功。

到这里,想想我做的所有改动,只能说最后的三个环境变量是一定要配置的,前面的包括路径长度Library和Repository的改动,并不确定是否是导致报错的原因。

这次就不再次往下去探究了,等下次重新配置环境的时候再研究一下。