Jenkins + aapt + JForg Artifatory 搭建快速版本发布(Android, IOS)
2017-02-18 23:42
615 查看
公司有几十个代理商,每个代理商对我们的产品提出的需求都不一样,都要做些订制,按照以前的流程是:代理商提需求到产品经理,产品经理整理后到开发,开发花四五天开发,给测试,然后开发再修改Bug,最好再到测试,再到产品经理,再交给客户。这个流程快的话,客户一周多就可以拿到软件版本。但经常也等更长时间。当代理商很多时,这样大伙儿就很累了,客户也等得很急,开发、测试人员也浪费大量时间做这些订制,不能做新功能了。
后来,我们对这个流程做了修改:最终实现以下结果,客户不管什么订制,10分钟后拿到他需要的软件版本,而且开发、测试人员也不参与这个事情,大家都闲下来。那是怎么实现的呢? 我们是这样做的。我们分析了客户的所有需求订制,就这些东西模块化,分成A、B、C、D、E、F...等模块,可能有些客户需要A、C、D功能,另外代理商需要C、D、F功能。同时我们在软件上将这些功能模块化,在Java文件每个功能对应一个全局变量,例如public static final
boolean bShowMapOnStartup = false; //开机显示图片, 这样的全局变量放在一个Java文件里,将近有30多个, 同时做另外一个功能配置文件,这个配置文件和刚才说的Java文件一一对应,使用ANT打包,ANT打包前先读取功能配置文件,打包脚本再修改Java文件代码,将有些功能打开,有些功能关闭,然后打包成APK文件(Android)或ipa文件(IOS),这样就实现代理商的订制功能。同时搭建了一套Jenkins系统,代理商可以访问这套Web系统,在上面勾选需要的功能,然后选择打包,我们将客户勾选的功能转化成刚才说的功能配置文件,去Git上下载最新的release版本
代码,然后调用aapt打包,打出的包传到JForg Artifatory 系统上,打包过程大概5分钟,然后给客户发送邮件,将JForg Artifatory 的链接发给客户,客户收到邮件后,就可以下载相应的APK文件(Android),或ipa文件(IOS)。
整个流程,客户快速得到它需要的软件版本(10分钟),开发、测试人员也没有介入这个流程。
但这里也要注意的是,平时开发人员将这些功能模块封装得很好、也是经过测试人员测试过的,提交到release版本上,客户使用的是release版本打包。
如果客户要做全新的订制,或者新功能订制,那这套系统不能解决,只能走以前老的流程。
后来,我们对这个流程做了修改:最终实现以下结果,客户不管什么订制,10分钟后拿到他需要的软件版本,而且开发、测试人员也不参与这个事情,大家都闲下来。那是怎么实现的呢? 我们是这样做的。我们分析了客户的所有需求订制,就这些东西模块化,分成A、B、C、D、E、F...等模块,可能有些客户需要A、C、D功能,另外代理商需要C、D、F功能。同时我们在软件上将这些功能模块化,在Java文件每个功能对应一个全局变量,例如public static final
boolean bShowMapOnStartup = false; //开机显示图片, 这样的全局变量放在一个Java文件里,将近有30多个, 同时做另外一个功能配置文件,这个配置文件和刚才说的Java文件一一对应,使用ANT打包,ANT打包前先读取功能配置文件,打包脚本再修改Java文件代码,将有些功能打开,有些功能关闭,然后打包成APK文件(Android)或ipa文件(IOS),这样就实现代理商的订制功能。同时搭建了一套Jenkins系统,代理商可以访问这套Web系统,在上面勾选需要的功能,然后选择打包,我们将客户勾选的功能转化成刚才说的功能配置文件,去Git上下载最新的release版本
代码,然后调用aapt打包,打出的包传到JForg Artifatory 系统上,打包过程大概5分钟,然后给客户发送邮件,将JForg Artifatory 的链接发给客户,客户收到邮件后,就可以下载相应的APK文件(Android),或ipa文件(IOS)。
整个流程,客户快速得到它需要的软件版本(10分钟),开发、测试人员也没有介入这个流程。
但这里也要注意的是,平时开发人员将这些功能模块封装得很好、也是经过测试人员测试过的,提交到release版本上,客户使用的是release版本打包。
如果客户要做全新的订制,或者新功能订制,那这套系统不能解决,只能走以前老的流程。
相关文章推荐
- ShareSDK for iOS V 2.10.1和ShareSDK for Android V 2.5.1 版本齐发布
- ShareSDK for Android版本:V2.4.0发布
- EasyIPCamera Android版本RTSP服务器RTSPServer快速搭建
- 使用 Jenkins 搭建 iOS/Android 持续集成打包平台 (开箱即用)
- 使用Jenkins搭建iOS/Android持续集成打包平台
- ShareSDK for Android 版本:V 2.4.1发布
- 使用Jenkins搭建iOS/Android持续集成打包平台
- 使用Jenkins搭建iOS/Android持续集成打包平台
- 使用Jenkins搭建iOS/Android持续集成打包平台
- jenkins 搭建 iOS Android 持续集成随笔
- ShareSDK for iOS 版本:V 2.9.8发布
- TeeChart图表控件的移动版本TeeChart for Xamarin.Android 发布!
- ShareSDK for Android 版本:V 2.5.4发布
- Jenkins for iOS 搭建日记
- [置顶] ArcGIS Runtime SDKs 10.2 for iOS & Android& OS X发布
- ShareSDK for Android 版本:V 2.5.0发布
- Jenkins 搭建U3D自动发布 Android
- Jenkins 搭建U3D自动发布 IOS
- 【我的Android进阶之旅】快速创建和根据不同的版本类型(Dev、Beta、Release)发布Android 开发库到Maven私服
- 使用 Jenkins 搭建 iOS/Android 持续集成打包平台 (开箱即用)