iOS 打包脚本

245 阅读2分钟

#使用方法

if [ ! -d ./ipaPackage ];

then

mkdir -p ipaPackage;

fi

#工程绝对路径

project_path=(cddˋirname(**cd** \`dirname 0 `; pwd)

#工程名 将XXX替换成自己的工程名

project_name=HRZ

#scheme名 将XXX替换成自己的sheme名

scheme_name="e省宝"

#打包模式 Debug/Release

development_mode=Debug

#build文件夹路径

build_path=${project_path}/ipaPackage/build

#plist文件所在路径

exportOptionsPlistPath=${project_path}/ExportOptions.plist

#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

number=2;

if [ $1 == dis ]

then

echo "包环境dis环境release环境"

number=1

else

number=2

echo "包环境dev环境Debug环境"

fi

devExportOptionsPath=${project_path}/ipaPackage/devExportOptions.plist

disExportOptionsPath=${project_path}/ipaPackage/disExportOptions.plist

if [ $number == 1 ];then

development_mode=Release

exportOptionsPlistPath=$disExportOptionsPath

else

development_mode=Debug

exportOptionsPlistPath=$devExportOptionsPath

fi

#导出.ipa文件所在路径

exportIpaPath=project_path/ipaPackage/{project\_path}/ipaPackage/{development_mode}

echo '///-----------'

echo '/// 正在清理工程'

echo '///-----------'

rm -rf build_path

xcodebuild \

clean -configuration ${development_mode} -quiet || exit

echo '///--------'

echo '/// 清理完成'

echo '///--------'

echo ''

echo '///-----------'

echo '/// 正在编译工程:'${development_mode}

echo '///-----------'

xcodebuild \

archive -workspace project_path/{project\_path}/{project_name}.xcworkspace \

-scheme ${project_name} \

-configuration ${development_mode} \

-archivePath build_path/{build\_path}/{project_name}.xcarchive -quiet || exit

echo '///--------'

echo '/// 编译完成'

echo '///--------'

echo ''

echo '///----------'

echo '/// 开始ipa打包'

echo $exportOptionsPlistPath

echo '///----------'

xcodebuild -exportArchive -archivePath build_path/{build\_path}/{project_name}.xcarchive \

-configuration ${development_mode} \

-exportPath ${exportIpaPath} \

-exportOptionsPlist ${exportOptionsPlistPath} \

-quiet || exit

if [ -e exportIpaPath/exportIpaPath/scheme_name.ipa ]; then

echo '///----------'

echo '/// ipa包已导出'

echo '///----------'

echo 'ipa包路径'

echo $exportIpaPath

open exportIpaPath/exportIpaPath/scheme_name.ipa

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"validateappfaltoolPath" --validate-app -f {exportIpaPath}/${scheme_name}.ipa -u zhangxiaowen@szsxrkj.com -p Hongrenzhuang1 -t ios --output-format xml

#"altoolPath"uploadappfaltoolPath" --upload-app -f {exportIpaPath}/${scheme_name}.ipa -u zhangxiaowen@szsxrkj.com -p Hongrenzhuang1 -t ios --output-format xml

##蒲公英上的User Key

#uKey="97b4117500e96a773d7ebfbf04aa1f72"

##蒲公英上的API Key

#apiKey="2185336c77e9343c1506e0975a9b79a2"

##要上传的ipa文件路径

#IPA_PATH=exportIpaPath/exportIpaPath/scheme_name.ipa

#echo '已上传生产环境包到蒲公英'

#echo $IPA_PATH

##执行上传至蒲公英的命令,这句不需要修改

#curl -F "file=@IPA_PATH"F"uKey={IPA\_PATH}" -F "uKey={uKey}" -F "_api_key=${apiKey}" www.pgyer.com/apiv1/app/u…

#open -a "/Applications/Safari.app" www.pgyer.com/Mb8a

#else

#上传到Fir

# 将XXX替换成自己的Fir平台的token

#fir login -T ac877788082fd604677295e9429b2ccc

#fir publish exportIpaPath/exportIpaPath/scheme_name.ipa

#蒲公英上的User Key

#uKey="4a56a43f986279881632e6ad21de6145"

#蒲公英上的API Key

#apiKey="11e3bd9614271b4720c954092001b107"

#要上传的ipa文件路径

#IPA_PATH=exportIpaPath/exportIpaPath/scheme_name.ipa

#echo '已上传测试环境包到蒲公英'

#echo $IPA_PATH

#执行上传至蒲公英的命令,这句不需要修改

#curl -F "file=@IPA_PATH"F"uKey={IPA\_PATH}" -F "uKey={uKey}" -F "_api_key=${apiKey}" www.pgyer.com/apiv1/app/u…

#open -a "/Applications/Safari.app" www.pgyer.com/38im

#fi

#rm -rf build_path

#rm -rf IPA_PATH

exit 0