这是我用fastlane
配合Jenkins
打包之前自己写的python脚本,用了一年多了。现在只有部分旧项目还在用它打包,毕竟是之前用心写的,还是记录一下。
记得Xcode9更新的时候打包出了点问题,我提取了fastlane
核心打包脚本xcbuild-safe.sh
替换了我自己写的打包方法。
总的来说有以下几个功能:
- 支持选择项目
- 支持选择target
- 支持自增版本号(或者自定义版本号)
- 支持自动上传蒲公英,上传失败自动重试
- 支持继续上次未完成的上传
- 支持生成打包日志(记录时间、版本、在线下载地址、应用内安装地址)
- 打包完成自动生成打包信息并复制到粘贴板(APP名称、版本、在线下载地址、应用内安装地址)
(咦,总结了一下之后感觉我写的这个脚本还是蛮强大嘛……)
脚本目录结构
auto_build.py
打包脚本BuildInfo.json
里保存了打包所需的所有信息IPA.plist
xcode9之后新增的打包需要的文件
脚本使用方法
前提:先安装python 3环境和相应的模块(biplist、json、os、requests、time、clipboard)具体怎么安装请百度一下
貌似os和time是系统自带的,我也不是很确定,不怎么用python。也可以不装模块,等运行脚本的时候根据报错提示安装缺失的模块
1、打开BuildInfo.json
,填写以下内容并保存:
path
: 工程目录地址
workspace
: workspace文件名称
name
:项目名字(这个可以随便写)
2、双击运行新增target脚本.tool
,会自动提示需要填写的相关信息
说明
user_key
:蒲公英user_keyapi_key
:蒲公英api_keyname
:这个target的名称(随意填写即可)plist_path
:把工程里的Info.plist文件直接拖进来按回车即可scheme
:工打包的scheme我这里只是做示例,所以没有传蒲公英的相关信息
3、修改IPA.plist
文件
先用xcode手动打包一次,然后在打包目录里面就有这个plist文件,把里面所有内容都复制过来即可
3、运行打包脚本
这样打包就可以了,打出来的包会自动放到IPA_DIR文件夹下面
后记:
不过xcode9之后打包方式发生变化,需要用到IPA.plist
文件,而这个文件里面有打包所需的一些信息。我这个脚本用的是固定的IPA.plist
文件,所以实际上一个脚本只能打一个项目的包……
这是个坑点吧,不过打单个项目的包还是很好用的
其实这个缺陷改起来也不难,但是懒得去改了,毕竟现在已经换成了fastlane
打包了,旧的打包方式就让它随风而逝吧。