Unity使用jenkins打包
unity使用命令行打包的时候是不能再开一个unity编辑器窗口进行工作的,所以常规有一个额外的打包服务器。一般手游都需要接SDK,所以常规是导出一个androidstudio(IL2cpp)工程
1.基础配置
1.1 安装jenkins
在官网下载jenkins安装包即可。jenkins需要填一个jdk路径,所以就需要先下载一个jdk 1.8
1.2 配置JDK
- Manage Jenkins→Global Tool Configuration→JDK。
- 设置JDK
- 别名:jdk 1.8
- JAVA_HOME: *1步骤中下载的jdk安装路径,如果是默认安装则在 C:\Program Files\Java\jdk1.8.0_31*
1.3 配置Gradle
- 安装Gradle
- Manage Jenkins→Global Tool Configuration→Gradle。
- name: gradle版本号
- 我勾选了Install automatically,选择了一个6.8的版本
- 设置GRADLE_USER_HOME
- Dashboard→Manage Jenkins→Configure System→Environment variables→add
- key:GRADLE_USER_HOME
- value:C:\Users\admin\.gradle\wrapper\dists\gradle-6.8-bin\1jblhjyydfkclfzx1agp92nyl\gradle-6.8
2.创建任务
创建一个自由任务
1 General→使用自定义的工作空间→unity导出的工程下的launcher目录
2 构建→Invoke Gradle→选择安装的版本6.8
3 Tasks:clean assembleRelease —stacktrace —debug
3.其他选项
完成1、2两个步骤就可以打出一个默认unity工程的apk了。实际开发过程中会有一些其他的设置
3.1 Flaovrs
当接入不同渠道后需要不同渠道进行打包,Android工程需要做好Flavors的支持。
3.1.1 安卓工程配置Flavors
1 | 安卓工程Gradle示例: |
3.1.2 Jenkins配置
- job->general->This project is parameterized增加参数
- BUILD_TYPE: 固定 Debug 跟Release
- BUILD_FLAVOR:productFlavors下的flavorsName 例:Default
- VERSION_CODE:版本id
- VERSOIN_name:版本Name
- BUILD_TIME:构建时间(需要安装Date Parameter插件)
- job->构建->Gradle->高级->勾选Pass all job parameters as Project properties(将上述参数注入到Gradle.propertys中)
- job->构建->Gradle->task变更为 clean assemble${BUILD_FLAVOR}${BUILD_TYPE}
3.2 构建完成后下载APK
3.2.1 Tomcat
下载Tomcat一路下一步安装
3.2.2 构建日志增加下载链接
- 允许html格式:Dashboard ->Configure Global Security->标记格式器->Safe HTML
- 追加链接:job->构建后操作->新增 SetBuild description -> Description
1 | <a href='<http://172.16.61.14:9090/download/DGQST-${BUILD_FLAVOR}-${BUILD_TYPE}-${VERSION_CODE}-${BUILD_TIME}.apk>'>APK下载链接</a> |
下载链接中的文件名需要跟Gradle脚本中的输出包名对应起来
1 | android.applicationVariants.all { variant -> |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 L!