FastLane簡(jiǎn)介
Fastlane是一組工具套件,旨在實(shí)現(xiàn)iOS應(yīng)用發(fā)布流程的自動(dòng)化,并且提供一個(gè)運(yùn)行良好的持續(xù)部署流程,只需要運(yùn)行一個(gè)簡(jiǎn)單的命令就可以觸發(fā)這個(gè)流程。
Fastlane是一個(gè)ruby腳本集合,其中囊括了向蘋果商店提交新應(yīng)用或更新已有應(yīng)用所需要的最常用任務(wù)。
- deliver:用于上傳應(yīng)用的二進(jìn)制代碼,應(yīng)用截屏和原數(shù)據(jù)到應(yīng)用商店
- snapshot:可以自動(dòng)化iOS應(yīng)用在每個(gè)設(shè)備上的本地化截屏過程
- sigh:可以生成并下載開發(fā)者的應(yīng)用商店配置文件
- produce:可以在開發(fā)者管理中心與iTunesConnect中創(chuàng)建新的應(yīng)用
-
deliver:可以向iTunesConnect提交新的應(yīng)用版本以供審核或修改審核版本中的一些配置項(xiàng)
因書籍類應(yīng)用批量打包項(xiàng)目需要,筆者對(duì)produce與deliver這兩個(gè)工具接觸的比較多,本篇文章也主要是對(duì)這兩個(gè)工具的使用心得與介紹。如對(duì)FastLane其它工具感興趣,可以跳轉(zhuǎn)到該開源項(xiàng)目的Github地址上查看。
produce
使用-h命令可以調(diào)出produce命令支持的各個(gè)參數(shù),如下圖:
- create表示的就是創(chuàng)建應(yīng)用,該命令會(huì)首先在開發(fā)者中心創(chuàng)建應(yīng)用的AppID,然后在iTunesConnect里創(chuàng)建將要發(fā)布到AppStore的應(yīng)用。
- -u參數(shù)表示的是開發(fā)者賬號(hào)的賬戶名,第一次使用時(shí),會(huì)要求用戶輸入賬戶密碼
- -a參數(shù)表示應(yīng)用的BundleId,這個(gè)不需要詳細(xì)說明了吧。
- -q參數(shù)表示應(yīng)用在iTunesConnect中顯示的名稱,注意這里不支持中文哦,否則會(huì)導(dǎo)致命令執(zhí)行失敗。那我們?nèi)绾蝿?chuàng)建中文應(yīng)用呢?別忘了還有后面的deliver工具呢!
-
-m參數(shù)表示應(yīng)用使用的主要語言,對(duì)應(yīng)的是應(yīng)用在iTunesConnect創(chuàng)建時(shí)需要選擇的語言類型。它的取值范圍如下圖顯示:
-m參數(shù)取值范圍
創(chuàng)建一個(gè)新的應(yīng)用只需要下面這個(gè)命令就可以了,再也不需要先跑到開發(fā)者中心創(chuàng)建AppId,然后跑到iTunesConnect里創(chuàng)建應(yīng)用了。
produce create -u wxq****@163.com -a com.baicy.apptest -q apptest -m "Simplified Chinese"
deliver
應(yīng)用創(chuàng)建成功后,就可以通過deliver命令上傳審核所需要的各種資料了。deliver命令所需要的目錄環(huán)境結(jié)構(gòu)如下圖:
該目錄結(jié)構(gòu)可以通過init命令來自動(dòng)創(chuàng)建,開發(fā)者只需要作相應(yīng)的修改后重新提交即可完成整個(gè)應(yīng)用的發(fā)布。
- copyright.txt表示應(yīng)用審核時(shí)需要填寫的版本選項(xiàng)。
- primary_category.txt表示應(yīng)用類別
- description.txt表示應(yīng)用的簡(jiǎn)介
- keywords.txt表示用戶在AppStore上搜索應(yīng)用可以使用的關(guān)鍵字
- name.txt表示應(yīng)用的名稱,這里就是produce命令不支持中文顯示的補(bǔ)救辦法,只要將這里改成中文,iTunesConnect后面會(huì)自動(dòng)使用該名稱來顯示應(yīng)用名
- support_url.txt表示應(yīng)用的支持網(wǎng)站
這里羅列的txt文件都是應(yīng)用提交審核要求的必須填寫的字段,其它選填字段也有相應(yīng)的txt文件與之對(duì)應(yīng),不再做詳細(xì)說明了。
init命令不再說明
download_metadata\download_screenshots命令是從現(xiàn)有的審核版本中下載配置與屏幕截圖文件。
run命令就是上傳配置與截圖到iTunesConnect了,它也可以配合下面的各種-skip參數(shù)來單獨(dú)更新指定內(nèi)容。
-l參數(shù)表示應(yīng)用在iTunesConnect中的icon文件,就是提交審核時(shí)所需要提交的1024*1024格式的PNG文件。
--skip_binary_upload/--skip_screenshots/--skip_metadata參數(shù)表示跳過上傳ipa/屏幕截圖/metadata數(shù)據(jù)
--submit_for_review表示是否提交應(yīng)用審核
//從iTunesConnect上更新配置到本地
deliver init -u wxq***@163.com -a com.baicy.apptest
...
//修改完配置后重新提交
deliver run -u wxq***@163.com -a com.baicy.apptest -i ./apptest.ipa --submit_for_review
好了,說了這么多廢話,最主要的還是要實(shí)際使用。FastLane我是在今年年初就接觸了,但一直沒有實(shí)際使用。最近才發(fā)現(xiàn),原來這東西還是很順手的,沒有想像中的復(fù)雜。