iOS 自動打包發佈到Fir和AppStore

特別說明:若是項目沒有采用Cocoapods管理,沒有.xcworkspace,只有xcodeproj;只須要將腳本中這句git

xcodebuild \
archive -workspace ${project_path}/${project_name}.xcworkspace \ 

這句替換成下面這樣就ok了github

xcodebuild \
archive -project ${project_path}/${project_name}.xcodeproj \ 

平常編譯打包工做主要是如下兩個目的:

  • 提交測試版本ipa給測試人員
    配置好測試描述文件,而後Product -> Archive編譯打包,選擇Organizer,導出ad hoc 的 ipa包。再上傳到Fir等第三方平臺上,而後通知測試同事進行測試。整個流程下來須要人工監守操做比較耗費時間。
  • 提交ipa包到App Store已供審覈
    配置好正式的描述文件,而後一樣的方式打包導出app store 的 ipa包。經過Application Loader 等方式提交到App store等待蘋果處理二進制包,處理完後選擇構建版本,最後提交等待蘋果審覈。

不管打測試包提供測試人員測試仍是打正式包上傳到App strore,整個過程都是重複耗費人工的操做,須要人工等待,而後各類點擊選擇...咱們能夠經過編寫腳本語言來實現整個過程。shell

配置自動打包發佈的流程

經過下面幾步的設置好以後,之後再進行打包發佈到第三方平臺或者App Store 只須要一步就能搞定了(一個回車搞定)

筆者經過shell腳本實現從archive->生成ipa->上傳到第三方平臺(Fir.im 、蒲公英)或 App store。經過下面幾步便可實現自動打包上傳功能。xcode

  • 下載Shell腳本
  • 將archiveScript中的幾文件拖入工程的根目錄
  • 根據本身需求選擇好描述文件
  • 根據本身的項目修改一下shell.sh (修改哪裏下面會指出)
  • cd到工程根目錄,經過./shell.sh 執行腳本便可

下面經過實例詳細演示整個過程

第一種:打包上傳到第三方平臺Fir (上傳蒲公英原理同樣)
第二種:打包上傳到App store

將經過這幾步來說解整個過程bash

  • 準備工做
  • 準備工做作完後,正式開啓自動化之路
  • 自動化腳本執行過程當中可能遇到的錯誤

準備工做

  • 由於要上傳到Fir平臺,須要先安裝fir-cli併發

    命令:gem install fir-cli
     
  • 若是沒有安裝過rvm,須要安裝rvm,在終端輸入rvm -v命令查看,若是打印出rvm:command not found說明沒有安裝過rvm,若是能打印出rvm版本等信息說明安裝過。若是沒有安裝過rvm能夠經過下面的命安裝,若是已經安裝過能夠忽略。app

    • 在終端輸入 curl -L get.rvm.io | bash -s stable,而後稍等一會rvm就安裝好了
    • 在終端輸入 source ~/.bashrc
    • 在終端輸入 source ~/.bash_profile
    • 再輸入rvm -v查看安裝成功

準備工做作完後,正式開啓自動化之路

1、將archiveScript中的3個文件拖入工程的根目錄

 

2、修改一下shell.sh 文件

 
 

 

Product ->Scheme -> Edit Scheme 查看本身的scheme_namecurl

 

 

獲取Fir平臺的token測試


 

 

3、 cd到工程根目錄,./shell.sh 回車就會執行腳本

 
 

4、 根據本身的需求選擇便可

若是開始選擇的1:app-store 會發布到app storeui

 

若是開始選擇的2:ad-hoc 發佈到fir平臺

 

 

到這裏就已經實現了經過腳本打包併發布到第三方平臺Fir 和 Appstore的整個流程。

 

參考連接:https://www.jianshu.com/p/05dc9f925467

相關文章
相關標籤/搜索