今天研究了一下Xcode一鍵打包上傳的shell實現(xiàn),實現(xiàn)自動化。
實現(xiàn)自動化有以下好處:
提交測試版本ipa給測試人員
配置好測試描述文件芜壁,然后Product -> Archive編譯打包,選擇Organizer,導出ad hoc 的 ipa包绣的。再上傳到Fir等第三方平臺上研乒,然后通知測試同事進行測試。整個流程下來需要人工監(jiān)守操作比較耗費時間佳窑。
提交ipa包到App Store已供審核
配置好正式的描述文件,然后同樣的方式打包導出app store 的 ipa包父能。通過Application Loader 等方式提交到App store等待蘋果處理二進制包神凑,處理完后選擇構建版本,最后提交等待蘋果審核何吝。
無論打測試包提供測試人員測試還是打正式包上傳到App strore溉委,整個過程都是重復耗費人工的操作,需要人工等待爱榕,然后各種點擊選擇…我們可以通過編寫腳本語言來實現(xiàn)整個過程瓣喊。
shell腳本下載:https://github.com/fenglingdeyi/archiveshell
在寫自動化腳本的時候我借鑒了作者@關耳佳的文章:這篇文章大家可以先看一下。
iOS一鍵搞定自動打包并發(fā)布到AppStore和Fir
大家可以先看一下黔酥。
首先上傳到Fir平臺藻三,需要先安裝fir-cli
安裝命令是:
gem install fir-cli
如果報錯,請參考文章:iOS開發(fā)進階 - 使用shell腳本自動打包上傳到fir.im上
準備工作做完后 將下載好的三個文件放到工程目錄里面跪者。
在上傳到App Store的plist如下:
在上傳到fir和蒲公英平臺的plist如下:
上傳到App Store和上傳到fir和蒲公英平臺的plis的主要區(qū)別是描述證書的區(qū)別
上傳到App Store的描述證書是選擇:
上傳到fir和蒲公英平臺的描述配置的證書選擇如下:
在執(zhí)行腳本的時候棵帽,中間出現(xiàn)了一些問題:
error: exportArchive: “HLCG.app” requires a provisioning profile with the Associated Domains and Push Notifications features.
Error
Domain=IDEProvisioningErrorDomain Code=9 “”HLCG.app” requires a
provisioning profile with the Associated Domains and Push Notifications
features.” UserInfo={NSLocalizedDescription=”HLCG.app” requires a
provisioning profile with the Associated Domains and Push Notifications
features., NSLocalizedRecoverySuggestion=Add a profile to the
“provisioningProfiles” dictionary in your Export Options property list.}
其實就是plist文件配置的問題。解決方法請參考:
http://www.sgfblog.com/archives/614#comments
修改一下shell腳本里面的配置:
然后執(zhí)行腳本
cd 到項目目錄執(zhí)行腳本:sh shell.sh
根據自己的需求選擇即可
如果開始選擇的1:app-store 會發(fā)布到app store
如果選擇2渣玲,則進入fir或者蒲公英平臺逗概,在安裝包導出成功之后出現(xiàn):
選擇1發(fā)布到fir平臺
成功后顯示:
選擇2上傳到蒲公英平臺,成功后顯示:
如果有什么問題逾苫,大家也可以參考文章:iOS一鍵搞定自動打包并發(fā)布到AppStore和Fir瑟押。
shell腳本下載:https://github.com/fenglingdeyi/archiveshell
鏈接:打包成功之后怎么給測試人員發(fā)送郵件腳本實現(xiàn):
www.reibang.com/p/ba4b5ee40798