天天看點

iOS打包IPA檔案并上傳至蒲公英

1、下載下傳腳本檔案:https://github.com/kepuna/archiveScript

2、将下載下傳之後解壓的檔案拖入工程的根目錄之下:

iOS打包IPA檔案并上傳至蒲公英
iOS打包IPA檔案并上傳至蒲公英

3、修改腳本檔案

打開腳本檔案shell.sh(可以用xcode或文本編輯器打開)

#使用方法

if [ ! -d ./IPADir ];
then
mkdir -p IPADir;
fi

#工程絕對路徑
project_path=$(cd `dirname $0`; pwd)

#工程名 将XXX替換成自己的工程名
project_name=XXX

#scheme名 将XXX替換成自己的sheme名
scheme_name=XXX

#打包模式 Debug/Release
development_mode=Debug

#build檔案夾路徑
build_path=${project_path}/build

#plist檔案所在路徑
exportOptionsPlistPath=${project_path}/exportTest.plist

#導出.ipa檔案所在路徑
exportIpaPath=${project_path}/IPADir/${development_mode}


echo "Place enter the number you want to export ? [ 1:app-store 2:ad-hoc] "

##
read number
while([[ $number != 1 ]] && [[ $number != 2 ]])
do
echo "Error! Should enter 1 or 2"
echo "Place enter the number you want to export ? [ 1:app-store 2:ad-hoc] "
read number
done

if [ $number == 1 ];then
development_mode=Release
exportOptionsPlistPath=${project_path}/exportAppstore.plist
else
development_mode=Debug
exportOptionsPlistPath=${project_path}/exportTest.plist
fi


echo \'///-----------\'
echo \'/// 正在清理工程\'
echo \'///-----------\'
xcodebuild \
clean -configuration ${development_mode} -quiet  || exit


echo \'///--------\'
echo \'/// 清理完成\'
echo \'///--------\'
echo \'\'

echo \'///-----------\'
echo \'/// 正在編譯工程:\'${development_mode}
echo \'///-----------\'
xcodebuild \
archive -workspace ${project_path}/${project_name}.xcworkspace \
-scheme ${scheme_name} \
-configuration ${development_mode} \
-archivePath ${build_path}/${project_name}.xcarchive  -quiet  || exit

echo \'///--------\'
echo \'/// 編譯完成\'
echo \'///--------\'
echo \'\'

echo \'///----------\'
echo \'/// 開始ipa打包\'
echo \'///----------\'
xcodebuild -exportArchive -archivePath ${build_path}/${project_name}.xcarchive \
-configuration ${development_mode} \
-exportPath ${exportIpaPath} \
-exportOptionsPlist ${exportOptionsPlistPath} \
-quiet || exit

if [ -e $exportIpaPath/$scheme_name.ipa ]; then
echo \'///----------\'
echo \'/// ipa包已導出\'
echo \'///----------\'
open $exportIpaPath
else
echo \'///-------------\'
echo \'/// ipa包導出失敗 \'
echo \'///-------------\'
fi
echo \'///------------\'
echo \'/// 打包ipa完成  \'
echo \'///-----------=\'
echo \'\'

echo \'///-------------\'
echo \'/// 開始釋出ipa包 \'
echo \'///-------------\'

if [ $number == 1 ];then

#驗證并上傳到App Store
# 将-u 後面的XXX替換成自己的AppleID的賬号,-p後面的XXX替換成自己的密碼
altoolPath="/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Versions/A/Support/altool"
"$altoolPath" --validate-app -f ${exportIpaPath}/${scheme_name}.ipa -u XXX -p XXX -t ios --output-format xml
"$altoolPath" --upload-app -f ${exportIpaPath}/${scheme_name}.ipa -u  XXX -p XXX -t ios --output-format xml
else      

echo "+++++上傳到蒲公英平台"

curl -F "file=@$exportIpaPath/$scheme_name.ipa" \

-F "uKey={$uKey}" \

-F "_api_key={$apiKey}" \

https://www.pgyer.com/apiv1/app/upload

echo "上傳蒲公英成功"

fi

exit 0      

4、執行腳本檔案

打開終端,cd到你的工程目錄之下,執行指令

sh  shell.sh