本例适合打包ipa文件测试使用,节省时间,如果是上架的话,还是用普通的xcode打包
下面是用shell打包ipa流程
以下是我们工程的目录结构
需要下载PackageApplication导入到xcode里
用student_ol.sh举例
##########################################################################################
buildtype=student-ol
hosturl=https://www.huidu.com
##########################################################################################
#修改为本地路径
由于慧读工程是和h5混编,所以需要把h5的压缩包加入到工程里
#拷贝h5路径
html_path=/Users/apple/Desktop/webApp/${buildtype}/h5.zip
#html_path=/Users/JiaLi/User/JiaLi/Package/WebApp/${buildtype}/h5.zip
#工作路径
#workspace_pathbase=/Users/JiaLi/User/JiaLi/Work/chineseall/svn/Branches/NativeTask/iOS/WReader/WRStudent
current_dir=$(pwd)
echo $current_dir
cd $current_dir
cd ..
cd WReader/WRStudent
workspace_pathbase=$(pwd)
echo $workspace_pathbase
workspace_path=${workspace_pathbase}/WRStudent
echo ======Begin Build:${buildtype}=========
#html在工程里的路径
html_workpath=${workspace_path}/h5.zip
#拷贝h5到工程路径,强制替换
cp ${html_path} ${html_workpath}
##########################################################################################
# 传入这次的版本号
#version_string="1.0"
# build号 我们是使用前时间作为build号的 2016041517 即为16年4月15号17点
build_number=$(date +%Y%m%d)
# 清空上一次的文件夹
rm -rf ${workspace_pathbase}/Build
# 进入要工作的文件夹
cd ${workspace_pathbase}
# 打包项目名字
scheme_name=WRStudent
# ipa名字
ipa_name=${buildtype}
# 打包使用的证书
CODE_SIGN_IDENTITY="iPhone Distribution: Beijing ChineseAll Education Technology Development Co., Ltd."
# 打包使用的描述文件 这描述文件的名字不是自己命名的那个名字,而是对应的8b11ac11-xxxx-xxxx-xxxx-b022665db452这个名字
PROVISIONING_PROFILE="2fa127db-9b60-4ac4-8993-7a93bcf2f498"
# 指定app的输出位置 也就是Demo中build文件夹的位置
build_path=${workspace_pathbase}/Build
这里指定打包好的ipa放入的位置
# 指定ipa的输出位置
ipa_path=/Users/apple/Desktop/jrxapp/$(date +%Y%m%d)
# info.plist文件的位置
config_plist=${workspace_path}/Resource/config.plist
# 下面是读取.plist文件的位置然后修改版本号和build号,这点没有使用xcodebuild提供的命令,在上面也有叙述
# 修改版本号
#/usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString $version_string" ${info_plist}
# 修改config
/usr/libexec/PlistBuddy -c "Set:hosturl ${hosturl}" ${config_plist}
# 生成yeemiao.app, 在build_path路径下面
xcodebuild -project ${workspace_path}.xcodeproj -target ${scheme_name} -configuration Release clean -sdk iphoneos build CODE_SIGN_IDENTITY="${CODE_SIGN_IDENTITY}" PROVISIONING_PROFILE="${PROVISIONING_PROFILE}" SYMROOT="${build_path}"
这里是新建一个打包ipa的时间信息目录
mkdir /Users/apple/Desktop/jrxapp/$(date +%Y%m%d)
# 生成yeemiao.ipa, 在ipa_path路径下面
xcrun -sdk iphoneos -v PackageApplication ${build_path}/Release-iphoneos/WRStudent.app -o ${ipa_path}/${ipa_name}.ipa
echo ======End Build:${buildtype}=========
运行shell