在每次添加udid时,都需要手动去开发者网站更新PP文件,下载配置到Xcode和更新PP文件到jenkins所有工程。是一个很耗时的操作。 使用fastlane match可在小组成员之间更方便的统一
-
xcode-select --install
|
Installer Script
|
Rubygems
|
macOS |
macOS |
macOS or Linux with Ruby 2.0.0 or above |
brew cask install fastlane |
Download the zip file. Then double click on the install script (or run it in a terminal window). |
sudo gem install fastlane -NV |
对每个工程配置fastlane(先拉取仓库代码,看同事对某个工程是否已配置好了fastlane,若已配置,只需要执行fastlane pps同步证书和pp文件即可),同步证书和PP文件到证书仓库用命令行进入需要配置的工程目录,执行fastlane init,根据提示输入公司开发者账号dev@xx.com,和密码(注意:请检查Xcode登录的账号是否是
,必须用此账号,因为只有此账号有创建PP文件的新增appID的权限)。会自动在工程目录中生成fastlane相关文件。
然后把下面代码添加到Fastfile中以下代码的下面
platform :ios do
before_all do
# ENV["SLACK_URL"] = "https://hooks.slack.com/services/..."
#cocoapods #注意,此处必须手动修正:在最左边加#注释掉,否则更新pods可能导致多工程时编译失败。
end
desc "update profile of appstore,adhoc,dev when udid added or renew dev account"
lane :pps do
match(git_url: "ssh://gitxx/ioscertificates.git",type: "appstore")
match(git_url: "ssh://gitxx/ioscertificates.git",type: "development",app_identifier: ["com.xx"
#,"tools.fastlane.app.today_widget" #Handle multiple targets
],force_for_new_devices: true)
match(git_url: "ssh://git@git.xx/ioscertificates.git",type: "adhoc",force_for_new_devices: true)
end
desc "sync profile of appstore,dev when admin has update cert and pps"
lane :syn do
match(git_url: "ssh://git@git.xx/ioscertificates.git",type: "appstore",readonly: true)
match(git_url: "ssh://git@git.xx/ioscertificates.git",readonly: true)
end
经过测试,还是下面方法在用蓝灯fanqiang的情况下下载靠谱:
- Use One-Click-Installer:
[11:43:54]: - download fastlane at
https://download.fastlane.tools [11:43:54]: -----------------------------------------------------------
[11:43:54]: - extract the archive and double click the `install`
不用想着更新gem或ruby的版本(本身就很麻烦,又慢的要死)。
2.自动生成的开发证书报错,提示未包含某个账号的签名证书。