###############設(shè)置需編譯的項目配置名稱
buildConfig="Release" #編譯的方式,有Release,Debug晾捏,自定義的AdHoc等
##########################################################################################
##############################以下部分為自動生產(chǎn)部分牺勾,不需要手動修改############################
##########################################################################################
projectName=`find . -name *.xcodeproj | awk -F "[/.]" '{print $(NF-1)}'` #項目名稱
target_name="Escort"
workspace_name="${target_name}.xcworkspace"
scheme="$target_name"
ExportOptionsPlistPath="./AdHocExportOptionsPlist.plist"
scheme_name="Escort"
# 強制刪除舊的文件夾
#rm -rf ./$scheme_name-IPA
# 指定輸出ipa路徑
export_path=./$scheme_name-IPA
# 指定輸出歸檔文件地址
export_archive_path="$export_path/$scheme_name.xcarchive"
# 指定輸出ipa地址
export_ipa_path="$export_path"
projectDir=`pwd` #項目所在目錄的絕對路徑
buildAppToDir=$projectDir/build #編譯打包完成后.app文件存放的目錄
isWorkSpace=true #判斷是用的workspace還是直接project肺樟,workspace設(shè)置為true,否則設(shè)置為false
echo "~~~~~~~~~~~~~~~~~~~開始編譯~~~~~~~~~~~~~~~~~~~"
###############進入項目目錄
cd $projectDir
#rm -rf ./build
buildAppToDir=$projectDir/build #編譯打包完成后.app文件存放的目錄
###############獲取版本號,bundleID
infoPlist="$projectDir/Escort/Escort/Info.plist"
bundleVersion=`/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" $infoPlist`
bundleIdentifier=`/usr/libexec/PlistBuddy -c "Print CFBundleIdentifier" $infoPlist`
bundleBuildVersion=`/usr/libexec/PlistBuddy -c "Print CFBundleVersion" $infoPlist`
###############開始編譯app
echo "版本信息"
echo $bundleVersion
echo $bundleIdentifier
echo $bundleBuildVersion
echo $projectName
echo -workspace
security unlock-keychain -p "103503" ~/Library/Keychains/login.keychain
echo "~~~~~~~~~~~~~~~~~~~pod install~~~~~~~~~~~~~~~~~~~"
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
#第一次執(zhí)行了pod之后就不用再次執(zhí)行了
#pod install --verbose --no-repo-update
echo "開始編譯workspace...."
xcodebuild archive -workspace "$workspace_name" -scheme "$scheme" -configuration $buildConfig -archivePath $export_archive_path
#CODE_SIGN_IDENTITY="iOS Distribution: Beijing Ubox Science & Trading Co, Ltd." PROVISIONING_PROFILE="32ba6a9e-e4d8-46e6-950d-af55549d831a"
echo "~~~~~~~~~~~~~~~~~~~ 編譯完成~~~~~~~~~~~~~~~~~~~"
echo "~~~~~~~~~~~~~~~~~~~ 開始打包~~~~~~~~~~~~~~~~~~~"
appDir=$projectDir/ #app所在路徑
echo "開始打包$projectName.app成$projectName.ipa....."
echo "打包地址$export_archive_path"
echo "輸出地址$export_ipa_path"
xcodebuild -exportArchive -archivePath $export_archive_path -exportPath $export_ipa_path -exportOptionsPlist $ExportOptionsPlistPath CODE_SIGN_IDENTITY="iOS Distribution: Beijing Ubox Science & Trading Co, Ltd." PROVISIONING_PROFILE="32ba6a9e-e4d8-46e6-950d-af55549d831a"
fir login 7b444bd2c652a260d074845df04d2183
fir publish $export_ipa_path/Escort.ipa
#上傳到fir
#fir publish $export_ipa_path/Escort.ipa -T firtoken -c "7b444bd2c652a260d074845df04d2183"
Jenkins中iOS打包shell腳本
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門兴蒸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來视粮,“玉大人,你說我怎么就攤上這事橙凳±倥梗” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵岛啸,是天一觀的道長钓觉。 經(jīng)常有香客問我,道長坚踩,這世上最難降的妖魔是什么荡灾? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上批幌,老公的妹妹穿的比我還像新娘础锐。我一直安慰自己,他們只是感情好荧缘,可當(dāng)我...
- 文/花漫 我一把揭開白布皆警。 她就那樣靜靜地躺著,像睡著了一般截粗。 火紅的嫁衣襯著肌膚如雪耀怜。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼略步!你這毒婦竟也來了描扯?” 一聲冷哼從身側(cè)響起,我...
- 正文 年R本政府宣布疆股,位于F島的核電站,受9級特大地震影響褂萧,放射性物質(zhì)發(fā)生泄漏押桃。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望唱凯。 院中可真熱鬧羡忘,春花似錦、人聲如沸磕昼。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽票从。三九已至漫雕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間峰鄙,已是汗流浹背浸间。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 問題 使用 Jenkins 來做 iOS 項目的持續(xù)集成狭瞎,升級 Xcode 9 之后细移,編譯完成之后打包會一直報如下...
- 安裝Jenkins 安裝jenkins方法有兩種: 1,使用homebrew安裝. 2,直接下載安裝包安裝; 方法...
- 背景: 隨著公司業(yè)務(wù)的擴大,人員的增多熊锭,每次通過XCode給測試人員Run代碼進行測試弧轧,已經(jīng)滿足不了,況且Run出...
- 又對他們發(fā)脾氣了球涛,又任性了劣针,又倔了,又想什么是什么了……哎亿扁,這脾氣捺典,真是沒誰了。从祝。襟己。事后想想,一點小事而已牍陌,不至于...