iOS自動(dòng)化打包 ---- xcodebuild 命令詳解

測(cè)試階段頻繁的打包,尤其是項(xiàng)目工程比較龐大的時(shí)候,電腦配置又比較一般,打一次包真的是可以玩手機(jī)了。為了不占用我們寶貴的時(shí)間,自動(dòng)化打包還是很必要的

成本最低的打包方式,就屬xcode自帶的xcodebuild命令了

打好包導(dǎo)出ipa其實(shí)也就2行腳本代碼 ----- 編譯打包、導(dǎo)出ipa
主要命令參數(shù)簡(jiǎn)介如下:

1、Archive

xcodebuild archive 
           -archivePath <archivePath>
           -project <projectName>
           -workspace <workspaceName>
           -scheme <schemeName>    #從-list命令中獲取
           -configuration <Debug|Release>

2、Export

xcodebuild -exportArchive
           -archivePath <xcarchivepath>
           -exportPath <destinationpath>
           -exportOptionsPlist <plistpath>   #這個(gè)plist文件可以通過(guò)打一次ipa包里面去獲取

當(dāng)然,喜歡干凈的朋友可以在打包之前執(zhí)行一下cmd + K清理一下工程
對(duì)應(yīng)當(dāng)然也有腳本命令啦

3、Clean

xcodebuild clean
           -workspace <workspaceName>
           -scheme <schemeName>    #從-list命令中獲取
           -configuration <Debug|Release>

如果在執(zhí)行過(guò)程中又不喜歡日志輸出的,可以在命令行最后加上

-quiet    #只有 warn 和 error 才會(huì)輸出

以上就是自動(dòng)化打包基本的幾種使用方法以及參數(shù)配置了,當(dāng)然xcodebuild的參數(shù)非常多,xcode能做的事情大部分都有對(duì)應(yīng)的命令行
下面列出部分可選命令的命令說(shuō)明,如果需要更復(fù)雜的使用方法,可以瀏覽官方文檔

看到這里,希望通過(guò)該命令集成屬于自己的shell腳本的可以參考這篇
iOS自動(dòng)化打包 ---- 集成shell腳本

可選命令命令說(shuō)明

命令名稱 命令描述
-usage 查看xcodebuild簡(jiǎn)潔的用法
-help 查看幫助
-verbose 提供額外的狀態(tài)輸出
-license 顯示Xcode和SDK許可協(xié)議
-checkFirstLaunchStatus 檢查是否有任何初啟動(dòng)任務(wù)需要執(zhí)行
-project NAME 編譯項(xiàng)目名稱,例如:xcodebuild -project XXX.xcodeproj
-target NAME 編譯目標(biāo)名稱
-workspace NAME編譯工作空間名稱
-scheme NAME 編譯計(jì)劃名稱
-configuration NAME 為構(gòu)建每一個(gè)目標(biāo)使用build配置名稱
-xcconfig PATH 在PATH作為替代應(yīng)用文件中定義的構(gòu)建設(shè)置
-arch ARCH 建立每個(gè)目標(biāo)的架構(gòu)ARCH;這將覆蓋在項(xiàng)目中定義的架構(gòu)
-sdk SDK 使用指定的SDK編譯項(xiàng)目
-toolchain NAME 使用工具鏈與標(biāo)識(shí)或名稱
-destination DESTINATIONSPECIFIER 使用由目標(biāo)說(shuō)明(用逗號(hào)分隔的一系列的key =描述目的地使用值對(duì))中描述的目的地
-destination-timeout TIMEOUT 等待TIMEOUT秒,而搜索的目標(biāo)設(shè)備
-parallelizeTargets 建立并行獨(dú)立目標(biāo)
-jobs NUMBER 指定并發(fā)生成操作的最大數(shù)量
-dry-run 做一切,除了實(shí)際運(yùn)行的命令
-hideShellScriptEnvironment 不顯示在構(gòu)建日志shell腳本中的環(huán)境變量
-showsdks 顯示已安裝的SDK的列表
-showBuildSettings 顯示構(gòu)建設(shè)置和值的列表
-list 列出了在一個(gè)工作空間中的一個(gè)項(xiàng)目的目標(biāo)和配置,或方案
-find-executable NAME 在所提供的SDK和工具鏈顯示的完整路徑可執(zhí)行文件名稱
-find-library NAME 在所提供的SDK和工具鏈顯示的完整路徑庫(kù)名
-version 顯示的Xcode的版本;與-sdk將顯示一個(gè)或所有已安裝的SDK信息
-enableAddressSanitizer YES/NO 測(cè)試時(shí)打開(kāi)或關(guān)閉地址過(guò)濾
-resultBundlePath PATH 指定在描述什么發(fā)生了捆綁的結(jié)果將被放置的目錄
-derivedDataPath PATH 指定的目錄中生成產(chǎn)品和其他衍生數(shù)據(jù)會(huì)
-archivePath PATH 被指定任何創(chuàng)建的檔案將被放置的目錄,或應(yīng)導(dǎo)出存檔
-exportArchive 指定歸檔應(yīng)導(dǎo)出
-exportOptionsPlist PATH 指定用于配置歸檔導(dǎo)出plist文件的路徑
-enableCodeCoverage YES/NO 打開(kāi)代碼覆蓋率或關(guān)閉時(shí)的測(cè)試
-exportPath PATH 指定從存檔導(dǎo)出的產(chǎn)品的目標(biāo)
-skipUnavailableActions 指定不能執(zhí)行計(jì)劃的行動(dòng)應(yīng)被跳過(guò)而不是導(dǎo)致失敗
-exportLocalizations 出口完成優(yōu)秀項(xiàng)目本地化
-importLocalizations 進(jìn)口本地化項(xiàng)目,假設(shè)任何必要的本地化資源在Xcode中已創(chuàng)建
-localizationPath 指定XLIFF本地化文件路徑
-exportLanguage 規(guī)定包括在本地化出口多個(gè)可選ISO 639-1語(yǔ)言

參考文章:xcodebuild命令介紹

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容