1. 程式人生 > >iOS 自動打包發布到Fir和AppStore

iOS 自動打包發布到Fir和AppStore

自動 命令 arc mage 安裝 文件 product height clas

特別說明:如果項目沒有采用Cocoapods管理,沒有.xcworkspace,只有xcodeproj;只需要將腳本中這句

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

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

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,整個過程都是重復耗費人工的操作,需要人工等待,然後各種點擊選擇...我們可以通過編寫腳本語言來實現整個過程。

配置自動打包發布的流程

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

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

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

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

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

將通過這幾步來講解整個過程

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

準備工作

  • 因為要上傳到Fir平臺,需要先安裝fir-cli

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

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

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

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

二、修改一下shell.sh 文件

技術分享圖片 技術分享圖片

技術分享圖片

技術分享圖片

Product ->Scheme -> Edit Scheme 查看自己的scheme_name

技術分享圖片

技術分享圖片

獲取Fir平臺的token


技術分享圖片

技術分享圖片

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

技術分享圖片

四、 根據自己的需求選擇即可

如果開始選擇的1:app-store 會發布到app store

技術分享圖片

如果開始選擇的2:ad-hoc 發布到fir平臺

技術分享圖片

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

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

iOS 自動打包發布到Fir和AppStore