这个呢,其实也不怎么复杂。达到的效果也比较好,可以将减轻工作负担。
脚本
由于这个比较独立,不依赖其他代码。可以单独创建个空白项目。然后编辑 Fastfile
主要有以下几点注意:
- 如果这个号有多个证书,可以先将
cert_id: ENV["CERTID"],
这一行注释掉,然后从打印中找到对应的证书ID再打开 - 如果仅有一个证书,那么可以将
cert_id: ENV["CERTID"],
这一行注释掉 - 具体的值需要通过环境变量来配置的,请注意哦
- 这里只配置了AdHoc打包文件,如果需要同时更新,可以简单修改一下
sigh
命令那部分 register_devices
支持读取文件的,平时可以收集整理好,换新马甲时可以直接读取
desc "添加测试机"
lane :tjcsj do
keychain_pass = sh("cat ~/.keychain_pass_file")
sh "security unlock-keychain -p #{keychain_pass}"
unlock_keychain(path: "~/Library/Keychains/login.keychain", password: "$(cat ~/.keychain_pass_file)")
## 添加新设备
register_devices(
devices: {
"备注名1" => "UDID值1",
"备注名2" => "UDID值2",
},
username: ENV["USERNAME"]
)
## 更新证书文件到本地
sigh(
adhoc: true, # 申请Adhoc版本
force: true, # 强制更新到所有设备的证书文件
username: ENV["USERNAME"], # APPLE账号
app_identifier: ENV["APPID"], # APPID
cert_id: ENV["CERTID"],
output_path: ENV["PPPATH"], # 存储证书文件路径
provisioning_name: ENV["PPNAME"], # 线上证书文件名称
filename: "#{ENV["PPNAME"]}.mobileprovision" # 存储证书文件名称
)
end
复制代码
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END