ç³»Å索ż
Å
<现在 âaude aude; ; IE p>Å -é
listalian的意大利!出生于î¨ æ ¨ е ìμ î¨ æ Tread · t t job · å¼ e¯ · ça ä¸ Å ¾ p>
çuçhereçæÅb了or ®ääPount
- AbiaOOQIANQAI8和ADâÁl·¢)·¥¢¢¢¢¢¢¢¢¢¢¢€
- sigh是Å⠀⠀⠀
- AbiaOOQIANQIAN10ÅERO¢
-
gym - ÅVARºIoosÅÅÅÅÅ项ÅÅÅÅÅÅÅÅ项
xctool
ï¼èshenzhen
; - qyerŀŮÅ。 Å是ÅÅ了。 / li>
- fastlane ç®åç解就æ¯æ§å¶æ´ä½æµç¨åå®ç°çæ¡æ¶å®¹å¨
ÅTiboute的
Å的物这些 如今
źæ -¬
fastlaneæäç怰···················· ¶Å使
-
action
:fastlaneçæ¶太摄。 |ÅuntuäåÅ了Abiaoqiqian16 -
lane
:fastlaneçääż¼¼è Kouude4cliä¼ÅÅÅÅÅ项ªª电ª
Åè·ÅK了Å了ż¼€Å®
lane :adhoc do
# build version 自动加一
increment_build_number
# 执行 pod install
cocoapods
# 调用 facebook 的 xctool 进行单元测试
xctool
# 对模拟器运行的 App 进行截图
snapshot
# 安装团队证书和 profiles
match
# 上传 App 元数据和签名的 ipa 到 iTunes Conneects
deliver
# 把截图套进一个设备外壳
frameit
# 允许自定义的脚本文件
sh "./customScript.sh"
# 发消息到 slack
slack
end
to®è£
Å·¥Å·® ½¥ÇÅ·¥Å·IS½完成®Å¼Pastlane;fastelätéätéäté以ät駧§§
- macOS 10.9+
- Ruby 2.0+(ærvmærbenvÅ®è£) li>
- Xcode +命令行工具
ä»ä≤½½½½½½½½½½½½½½½½½½½½½½½½½½½½了½ä。 ï¼
$ [sudo] gem install fastlane
fastlane is»è®2。
ŧ
# 切换只你开发的 iOS 项目根目录
$ cd to/your/ios/project
$ fastlane init
[11:46:34]: Detected iOS/Mac project in current directory...
[11:46:34]: This setup will help you get up and running in no time.
[11:46:34]: fastlane will check what tools you're already using and set up
[11:46:34]: the tool automatically for you. Have fun!
[11:46:34]: Created new folder './fastlane'.
...
Your Apple ID (e.g. fastlane@krausefx.com): xxx@gmail.com
[11:46:59]: Verifying if app is available on the Apple Developer Portal and iTunes Connect...
[11:46:59]: Starting login with user 'xxx@gmail.com'
Multiple teams found on the Developer Portal, please enter the number of the team you want to use:
1) XXXXXXXXXX "XXXXXXXXXX" (In-House)
2) YYYYYYYYYY "YYYYYYYYYY" (Company/Organization)
+----------------+----------------------------------------------------------------------------+
| Detected Values |
+----------------+----------------------------------------------------------------------------+
| Apple ID | xxx@gmail.com |
| App Name | Hello Fastlane |
| App Identifier | com.icyleaf.demo.HelloFastlane |
| Workspace | /Users/icyleaf/Development/iOS/HelloFastlane.xcworkspace |
+----------------+----------------------------------------------------------------------------+
[11:48:36]: This app identifier doesn't exist on iTunes Connect yet, it will be created for you
Please confirm the above values (y/n) n
App Identifier (com.krausefx.app): com.icyleaf.demo.HelloFastlane
[11:50:04]: Created new file './fastlane/Appfile'. Edit it to manage your preferred app metadata information.
Optional: The scheme name of your app (If you don't need one, just hit Enter): AppDemo
[11:50:40]: 'snapshot' not enabled.
[11:50:40]: 'cocoapods' enabled.
[11:50:40]: 'carthage' not enabled.
[11:50:40]: Created new file './fastlane/Fastfile'. Edit it to manage your own deployment lanes.
[11:50:40]: fastlane will send the number of errors for each action to
[11:50:40]: https://github.com/fastlane/enhancer to detect integration issues
[11:50:40]: No sensitive/private information will be uploaded
[11:50:40]: Successfully finished setting up fastlane
�¼和çk。 to的pape âkfastlane
®»Åfastlane
®Å½
网见电函¶CS
-
Fastfile
:æmpIlative5:æmt -
Appfile
:ä»苹果开发人员门户网站 -
Deliverfile
:ä»iTunes connectè·ÅV。
Ŷ仰»inä¶æææææææet美购(¼¼€Å‼»ä½美¾¼¾了和节目ˆæææææææææ棣¥¥¥¥¥◦ çiff±±±±±±±±±±±±±±±±±〜°°和½号€€«Æ€ æçè(ç
)
# Customise this file, documentation can be found here:
# https://github.com/fastlane/fastlane/tree/master/fastlane/docs
# All available actions: https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Actions.md
# can also be listed using the `fastlane actions` command
# Change the syntax highlighting to Ruby
# All lines starting with a # are ignored when running `fastlane`
# If you want to automatically update fastlane if a new version is available:
# update_fastlane
# This is the minimum version number required.
# Update this, if you use features of a newer version
fastlane_version "1.95.0"
default_platform :ios
platform :ios do
# 执行所有命令前都会先执行这里
before_all do
# ENV["SLACK_URL"] = "https://hooks.slack.com/services/..."
cocoapods
end
desc "Runs all the tests"
lane :test do
scan
end
desc "Submit a new Beta Build to Apple TestFlight"
desc "This will also make sure the profile is up to date"
lane :beta do
# match(type: "appstore") # more information: https://codesigning.guide
gym(scheme: "AppDemo") # Build your app - more options available
pilot
# sh "your_script.sh"
# You can also use other beta testing services here (run `fastlane actions`)
end
desc "Deploy a new version to the App Store"
lane :appstore do
# match(type: "appstore")
# snapshot
gym(scheme: "AppDemo") # Build your app - more options available
deliver(force: true)
# frameit
end
# 你可以定义属于自己的 lane(任务)
lane :hello do
puts "hello world"
end
# 仅当上述流程全部执行成功后才会走这里。其实应该定义为 after_success
after_all do |lane|
# slack(
# message: "Successfully deployed new App Update."
# )
end
# 如果流程发生异常会走这里并终止
error do |lane, exception|
# slack(
# message: exception.message,
# success: false
# )
end
end
ééiä駣 Žæ§èÅ >
$ fastlane ios hello
[11:56:24]: -------------------------------------------------
[11:56:24]: --- Step: Verifying required fastlane version ---
[11:56:24]: -------------------------------------------------
[11:56:24]: fastlane version valid
[11:56:24]: ------------------------------
[11:56:24]: --- Step: default_platform ---
[11:56:24]: ------------------------------
[11:56:24]: Driving the lane 'ios hello' ?
[11:56:24]: -----------------------
[11:56:24]: --- Step: cocoapods ---
[11:56:24]: -----------------------
[11:56:24]: $ pod install
...
[11:56:28]: hello world
+------+-------------------------------------+-------------+
| fastlane summary |
+------+-------------------------------------+-------------+
| Step | Action | Time (in s) |
+------+-------------------------------------+-------------+
| 1 | Verifying required fastlane version | 0 |
| 2 | default_platform | 0 |
| 3 | cocoapods | 4 |
+------+-------------------------------------+-------------+
[11:56:28]: fastlane.tools finished successfully ?
Å。 Å°ä©
# 自动更新 fastlane 工具,需要 rubygems >= 2.1.0
update_fastlane
# 最低兼容版本,由于 fastlane 还是逐步健壮的阶段更新速度还是蛮快的,
# 为了防止新特性在旧版本的不支持会强制设置一个最低兼容版本
# 不过工具特别贴心的会在每次执行之后会检查是否有新版本,如果有会在最后末尾追加新版本提醒
fastlane_version "1.95.0"
# 默认使用平台是 ios,也就是说文件可以定义多个平台,
# 通过上述执行的命令也能看出来是执行的 ios 平台下面的 hello 任务。
# 这个的作用是可以在执行 fastlane 的时候省略 ios,不信你执行 fastlane hello 试试。
default_platform :ios
androidçæ¯
和如何触摸¾¾¾ÅVoup ÅVOAPIS ä····································· - ÅÅOB¥ÅÅÅÅÅ项䮲£â
ää»ä±±±±±±±±±±±±±±usÅÅÅÅÅ了ÅÅ了Å -pin»Åü§Å®。