前言
早早去公司上班,老大经常会叫我出一个demo的包,我就想起来可以配置一个打包工具,让他随时想要一个运行包就可以自己打包看效果,就想起来可以配置一个Jenkins打包环境。这样在同一个局域网内不需要Unity开发环境,就只要浏览器打开Jenkins然后点击打包即可。
准备工具
- 准备Jenkins环境,可以选择去Jenkins官网下载,我这里准备了一个Jenkins的war包。
搭建步骤
- 首要前提本地Unity已经安装好Unity Android的打包环境,确保能够正确的用Unity导出Android apk包,这里就不过多介绍Unity如何导出Android环境了,自行解决。
- 命令行启动Jenkins,java -jar jenkins.war,会看到如下运行即代表启动成功,可以在浏览器输入http://localhost:8080/来测试,会看到进入Jenkins网站。
- 构建项目
注意windows路径和命令行的路径的转变,上图是Unity打包apk的批处理的路径,这个批处理如下图,并且要放到Unity的工程下。
注意:如果批处理路径中不能带有空格,如果有空格的话可以加上双引号,确保这个批处理能够正确的导出apk,批处理代码如下,并且注意用utf8保存:
@echo off
echo "Start build apk..."
C:"Program Files"Unity1748f1UnityEditorUnity.exe -projectPath D:studygitoschinajenkinsTestHelloUnity -quit -batchmode -executeMethod PerformBuild.CommandLineBuildAndroid -logFile build.log
REM %1 -projectPath %2 -quit -batchmode -executeMethod APKBuild.Build -logFile build.log
if not %errorlevel%==0 ( goto fail ) else ( goto success )
:success
echo Build APK OK
goto end
:fail
echo Build APK Fail
goto end
:end
pause
- 工程Editor目录下添加自动构建的代码
using UnityEditor;
using System.IO;
using System.Collections;
using UnityEngine;
using System.Collections.Generic;
class PerformBuild
{
static string[] GetBuildScenes()
{
List names = new List();
foreach (EditorBuildSettingsScene e in EditorBuildSettings.scenes)
{
if (e == null)
continue;
if (e.enabled)
names.Add(e.path);
}
return names.ToArray();
}
static string GetBuildPath()
{
string dirPath = Application.dataPath + "/../build/iPhone";
if (!System.IO.Directory.Exists(dirPath))
{
System.IO.Directory.CreateDirectory(dirPath);
}
return dirPath;
}
[UnityEditor.MenuItem("Tools/PerformBuild/Test Command Line Build iPhone Step")]
static void CommandLineBuild()
{
Debug.Log("Command line buildn------------------n------------------");
string[] scenes = GetBuildScenes();
string path = GetBuildPath();
if (scenes == null || scenes.Length == 0 || path == null)
return;
Debug.Log(string.Format("Path: "{0}"", path));
for (int i = 0; i
- 点击Jenkins构建
- 本地生成apk
更深入的配置可以参考以下链接,更多Jenkins插件和功能可以摸索研究。Mac中导出iOS配置后续添加或者想尝试的朋友参考文末雨凇的文章。
下载链接
- https://gitee.com/dingxiaowei/JenkinsTest
参考
- https://zh.wikipedia.org/wiki/Jenkins_(软件) Jenkins维基百科
- https://jenkins.io/doc/ Jenkins官方使用文档
- https://www.xuanyusong.com/archives/3349 宣雨凇的配置
后续
如果碰到问题欢迎留言讨论!
更多精品文章
Aladdin的博客
附加
后面还添加了邮件通知的配置也是蛮方便的。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.e1idc.net