iOS接入fastlane简易版教程
fastlane 是什么?
一套使用Ruby写的自动化工具集,旨在简化Android和iOS的部署过程,自动化你的工作流。它可以简化一些乏味、单调、重复的工作,像截图、代码签名以及发布App
fastlane 可以干什么
插件 | 功能 |
---|---|
gym | 是fastlane提供的打包工具。 |
snapshot | 生成多个设备的截图文件 |
frameit | 对截图加一层物理边框 |
increment_build_number | 自增build number 然后与之对应的get_build_number。Version number同理。 |
cert: | 创建一个新的代码签名证书 |
sigh: | 生成一个provisioning profile并保存打当前文件 |
pem: | 确保当前的推送证书是活跃的,如果没有会帮你生成一个新的 |
match: | 在团队中同步证书和描述文件。(这是一种全新的管理证书的方式) |
testflight: | 上传ipa到testflight |
deliver: | 上传ipa到AppStore |
fastlane 安装指南
gem 安装fastlane
1 | sudo gem install fastlane |
新项目安装fastlane
1 | fastlane init |
fastlane打包
打包需要条件
条件 | 名称 | 是否必须 |
---|---|---|
工程名 | DailyClock | 是 |
包名 | 打卡 | 是 |
打包环境 | Debug | 是 |
teamID | M99LZTCK8N | 是 |
provisioningProfiles | {“com.chengyan.DailyClock” => “DailyClockAppStore”} | 是 |
以下是上传蒲公英需要的参数 | ||
蒲公英的appid | **** | 否 |
蒲公英的userkey | ** | 否 |
以下是上传appstore需要准备的参数 | ||
用户名 | xxxxxx@xx.com | 是 |
密码 | xxxxx | 是 |
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD | xxxx | 是 |
FASTLANE_SESSION | xxx | 是 |
可能遇到的问题
怎么获取 FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD?
访问苹果账号管理添加app专用的密码怎么获取FASTLANE_SESSION?
命令行执行如下命令:fastlane spaceauth -u yourappleidcommand timed out after 10 seconds on try 1 of 4
原因: 很大可能是机器不给力了,使xcodebuild -showBuildSettings ?-workspace ./XX.xcworkspace -scheme XX -configuration Release
命令执行超时
解决方法: 在Fastfile的 before_all方法中,添加 :
1
2 ENV["FASTLANE_XCODEBUILD_SETTINGS_TIMEOUT"] = "120"
ENV["FASTLANE_XCODEBUILD_SETTINGS_RETRIES"] = "4"
一些范例
范例一、打包app并上传到蒲公英平台
1 | desc "Description of what the lane does" |
范例二、打包app上传到appstore
1 | desc "app store" |
成功截图
命令执行
1 | fastlane release # 打包并发布appstore |
更多
结合alfred效率神器,打包将更香。最终效果
真香!!!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 火三!