您好,登錄后才能下訂單哦!
方式一: 使用xcodebuild命令
步驟
0. 準(zhǔn)備工作:基礎(chǔ)參數(shù)
# 項(xiàng)目名稱,打包后生成 .ipa 文件的名稱
projectName="JimuDudu"
# 項(xiàng)目目錄(一般情況下,shell 腳本就在項(xiàng)目路徑下)
workspacePath="/Users/apple/Documents/Projects/dudu/jimu-dudu-ios/jimu-dudu/"
# Archive 后,文件導(dǎo)出目錄
archivePath="/Users/apple/Desktop/tmp/build/"
# 獲取 shell 腳本所在目錄
currentPath=$(cd `dirname $0`; pwd)
1. Build
xcodebuild -scheme ${projectName} -workspace "${workspacePath}${projectName}.xcworkspace" -configuration Release clean build
2. Archive
xcodebuild -scheme ${projectName} -workspace "${workspacePath}${projectName}.xcworkspace" -configuration Release archive -archivePath "${archivePath}${projectName}"
3. Export .ipa file
xcodebuild -exportArchive -archivePath "${archivePath}${projectName}.xcarchive" -exportPath ${archivePath} -exportOptionsPlist "${currentPath}/ADHocExportOptions.plist"
總結(jié)
TIPS
shell 腳本和 plist 文件在一個(gè)目錄下(也可以不在一個(gè)目錄,本示例是在一個(gè)目錄下,一般情況,shell 腳本和 plist 文件都會(huì)在項(xiàng)目目錄下。)
正常情況,shell 腳本和 plist 文件都會(huì)在項(xiàng)目目錄下,所以 workspacePath 和 archivePath 等路徑,都可以寫成相對(duì)路徑
編譯前還有一些準(zhǔn)備工作,比如拉取最新代碼
這樣打包過程很耗時(shí),在本機(jī)上測(cè)試,大概需要26分鐘!
這種方式,可能會(huì)跟隨 Xcode 版本的升級(jí)而略有改變,否則就會(huì)報(bào)錯(cuò)。
方式二: 手動(dòng)編譯,自動(dòng)打包
一般打測(cè)試包的方式
說明
手動(dòng)編譯,生成 .app 文件
把 .app 文件放在名字為 Payload 文件夾下
壓縮文件夾,生成 .zip 文件
修改文件名:.zip -> ipa,打包完成
步驟
準(zhǔn)備工作:修改 Xcode 中的配置
Build(command + B)
執(zhí)行腳本,自動(dòng)打包并生成 .ipa 文件
腳本簡(jiǎn)介
流程圖
主要代碼
# 創(chuàng)建 Payload 文件夾
payloadPath=${basicPath}/Payload
mkdir -p ${payloadPath}
# 移動(dòng) .app 文件到 Payload 目錄下
cp -r ${appFileFullPath} ${payloadPath}
# 打包并生成 .ipa 文件
zip -q -r ${ipaFileName} ${payloadPath}
總結(jié)
TIPS
執(zhí)行腳本時(shí),可以傳入 .app 文件所在路徑,或者不傳;不傳的話,默認(rèn)從當(dāng)前路徑獲取,獲取不到報(bào)錯(cuò)
執(zhí)行腳本時(shí),如果傳入的參數(shù)不包含 .app 文件名,則需要手動(dòng)輸入,若輸入錯(cuò)誤,報(bào)錯(cuò),終止程序。
一般而言,shell 腳本配置一次之后,就再也不需要修改。屬于一勞永逸的事。
方式三: Product -> Archieve -> Export
一般打提交 App Store 包的時(shí)候,會(huì)這么操作。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。