天天看點

【iOS】Xcode9 自動化腳本打包

由于從Xcode8開始不再支援xcrun來導出ipa包(不是完全不可用,需要手動拷貝Xcode7.x版本中的PackageApplication檔案到高版本Xcode中的對應的路徑下,路徑位址:/Applications/Xcode 7.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin)。是以本文主要介紹如何通過xcodebuild(蘋果釋出自動建構的工具)來實作腳本打包,打包流程如下:

一、清理Xcode工程,避免上次打包生成的編譯檔案影響本次打包:

【iOS】Xcode9 自動化腳本打包

清理完成後控制終端會輸出:* CLEAN SUCCEEDED *

二、編譯(Archive)Xcode工程,導出.xcarchive檔案

【iOS】Xcode9 自動化腳本打包

參數說明:

-project: 指定需要編譯的Xcode工程中的.xcarchive檔案的路徑
-scheme:指定需要編譯的工程的Scheme,多個Targets,指定需要編譯的Target對應的Scheme名稱
-configuration: 建構配置(Release/Debug)
-archivePath:指定編譯後生成的.xcarchive檔案的路徑位址,本文中在腳本目前目錄中建立了一個build檔案夾用于存放.xcarchive檔案。
           

如果需要重簽名的話就需要設定如下相關資訊:

CODE_SIGN_IDENTITY:證書的名稱(iPhone Distribution:  XXXXXXXXXX),可以在 Keychain Access 裡面找到。
DEVELOPMENT_TEAM:TeamID
PROVISIONING_PROFILE:描述檔案的UUID
PROVISIONING_PROFILE_SPECIFIER:描述檔案的名稱
           

編譯成功之後終端會輸出:* ARCHIVE SUCCEEDED *

重簽名會輸出設定的簽名和證書資訊:

【iOS】Xcode9 自動化腳本打包

三、導出.ipa檔案

【iOS】Xcode9 自動化腳本打包

參數說明:

-exportArchive: 導出ipa包的指令
-archivePath:指定上一次編譯Xcode工程導出的.xcarchive檔案的路徑
-exportPath:指定導出的.ipa檔案路徑位址
-exportOptionsPlist:指定ExportOptions.plist檔案路徑位址,這個是必須要的。該plist檔案内容如下:
           
【iOS】Xcode9 自動化腳本打包

ipa導出成功之後終端會輸出:* EXPORT SUCCEEDED *

到這兒整個打包流程就結束了,謝謝!

腳本檔案下載下傳:http://download.csdn.net/download/u013466880/10141015