gradle
- gradle类似于windows的bat文件命令行语言,AndroidStudio用gradle来组织整个流程要处理的事情。
- AndroidStudio与gradle是相互独立的。AndroidStudio用Android Gradle Plugin插件同时配合Gradle的包来运行build.gradle代码。
- AndroidStudio的插件和gradle的包的版本可以在Project Stucture里面设置,分别对应着工程目录下的build.gradle的classpath和gradle-wrapper.properties下的distributionUrl,为了避免AndroidStudio每次sync都去更新下载Gradle包,可以将distributionUrl设置为本地路径。
cocos2dx 3.17.2版本的模板项目安卓编译遇到的问题:
该cocos2dx版本的的模板工程默认用的gradle是4.6,android gradle plugin用的是3.1.0。在Mac创建项目后直接编译,出现报错,报错信息很少,说配置不对之类的,尝试换不同的Android Studio版本都不行,查不出原因,另寻出路。
尝试提升gradle版本和android gradle plugin版本,android gradle plugin 3.2.0及以上都编译成功,打出apk包。但发现cocos的脚本和资源都没有拷进到apk包。最后通过改写项目的android工程下的app/build.gradle拷贝相关逻辑解决。
– 要注意的是如果去照抄cocos2dx在github上对android工程下的app/build.gradle的更新,要注意因为项目目录结构的不同,github上的更新的拷贝目录位置少了一层,别进坑了。
进阶做法:
直接把cocos2dx引擎的template目录下的各模板的安卓工程下的build.gradle、app/build.gradld、gradle-wrapper.properties三个文件改成适合本机的配置,这样就不用每次创建项目都编译失败重新改配置了。