参考 伯乐在线-Toyun 敲一下enter键,完成iOS的打包工作
地址:http://ios.jobbole.com/84677/
注:仅仅对Toyun 的脚本增加几个变量。只用来记录,工作分享和参考原文打包过程中遇到的问题
原文的<,>被转成"< 和>"
以下就是脚本内容:
#! /bin/bash
# 传入这次的版本号
version_string="xxxx"
# build号
build_number="xxxx"
#产品名字
projectName="xxxx"
#产品下载地址
ipa_downUrl="https://xxx_$version_string.ipa"
#产品bundleID
projectBundleID="com.xxx.xxxx"
# 打包项目名字
scheme_name=xxxxxx
# 工程环境路径
workspace_path=~/xxxx
# 打包使用的证书
CODE_SIGN_IDENTITY="xxxxxxx"
# 打包使用的描述文件 这描述文件的名字不是自己命名的那个名字,而是对应的8b11ac11-xxxx-xxxx-xxxx-b022665db452这个名字
PROVISIONING_PROFILE="xxxxxx"
# 指定.app的输出位置 也就是Demo中build文件夹的位置
build_path=~/Desktop/appOutSide
# 指定.ipa的输出位置
ipa_path=~/Desktop/appOutSide
# info.plist文件的位置
info_plist=xxxInfo.plist
# 下面是读取.plist文件的位置然后修改版本号和build号,这点没有使用xcodebuild提供的命令,在上面也有叙述
# 修改版本号
/usr/libexec/PlistBuddy -c"Set :CFBundleShortVersionString$version_string"${info_plist}
# 修改build号
/usr/libexec/PlistBuddy -c"Set :CFBundleVersion$build_number"${info_plist}
# 生成.app, 在build_path路径下面
xcodebuild -workspace${workspace_path}.xcworkspace -scheme${scheme_name}-configuration Release clean -sdk iphoneos build CODE_SIGN_IDENTITY="${CODE_SIGN_IDENTITY}"PROVISIONING_PROFILE="${PROVISIONING_PROFILE}"SYMROOT="${build_path}"
# 生成yeemiao.ipa, 在ipa_path路径下面
xcrun -sdk iphoneos -v PackageApplication${build_path}/Release-iphoneos/XDJMallStandard.app -o${ipa_path}/XDJMallStandard_${version_string}.ipa
# itms-services协议需要使用的.plist文件的位置 生成的位置
plist_path=~/Desktop/appOutSide/xxxxx_${version_string}.plist
# 生成plist文件 在替换对应的路径中替换为你们的路径(xml格式上传后有点不齐全,可以参考原文,注意"<,>被转成"< 和>"")
cat<<EOF> $plist_path
items
assets
kind
software-package
url
${ipa_downUrl}
metadata
bundle-identifier
$projectBundleID
bundle-version
$build_number
kind
software
title
$projectName
EOF
# .ipa文件的位置
ipa_file_path=~/Desktop/appOutSide/xxxxx_${version_string}.ipa
# .plist文件的位置
plist_file_path=~/Desktop/appOutSide/xxxxx_${version_string}.plist