-
安装Java环境 JDK 1.8.xx 终端执行命令:Java --version
-
检查是否安装HomeBrew
brew -v
安装命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
如果安装过程中443: 解决方式如下 /etc/hosts 修改改文件下的内容:增加本机的IP地
#!/bin/bash
#安装器打包文件
\
#start---------------------------------------》
\
\
# 工程名
APP_NAME="会议"
\
# 1.设置配置标识
configuration="Debug"
\
#2.项目的根目录
cur_dir="/Users/guan/Desktop/github/app/app/IOS/iOS_mobile"
echo $cur_dir
\
#生成ipa的目录
desk_dir="/Users/guan/Desktop/ipa"
echo $desk_dir
\
#获取当前时间
CURTIME=`date '+%Y%m%d_%H%M%S'`
prefix_path="${desk_dir}/HuoMiao"
upload_path="${prefix_path}/${configuration}/${CURTIME}"
target_path=$cur_dir
\
echo "upload_path打包路径:$upload_path"
echo "target_path项目路径:$target_path"
\
#判断如果不存在upload_path创建,存在先删除再创建
if [ -d "$prefix_path" ]; then
if [ -d "$upload_path" ]; then
rmdir "$upload_path"
mkdir -p "$upload_path"
else
mkdir -p "$upload_path"
fi
else
mkdir -p "$prefix_path"
fi
\
# 项目名称
target_name="New"
workspace_name="${target_name}.xcworkspace"
scheme="TorchClass"
\
echo "configuration配置:$configuration"
echo "target_name项目名称:$target_name"
echo "workspace_name工作空间名称:$workspace_name"
echo "scheme名称:$scheme"
\
# archive包时使用证书、描述文件UUID;ipa包时使用描述文件(描述文件名称)
codeSignIdentity="iPhone Developer: xxx (9DFV2445HW)"
provision_UUID="63f0e245-c34a-4e94-8562-fa2e5ca5a52d.mobileprovision"
provisoning_profile="20211203_dev"
\
echo "codeSignIdentity开发证书:$codeSignIdentity"
echo "provision_UUID描述文件UUID:$provision_UUID"
echo "provisoning_profile描述文件:$provisoning_profile"
\
# 指定目录时
cd "$upload_path"
ipa_path="$upload_path"
archive_path="$upload_path/${target_name}.xcarchive"
# 日志路径
log_path="$upload_path/log.txt"
exportOptionsPlist_path="$desk_dir/HuoMiao/ExportOptions.plist"
\
pwd
echo "ipa_path导出路径:$ipa_path"
echo "archive_path生成路径:$archive_path"
echo "log_path打印路径:$log_path"
\
# 3 删除旧文件
rm -rf "$log_path"
rm -rf "$archive_path"
rm -rf "$ipa_path"
cd "$target_path"
\
pwd
# 4 清理构建目录
xcodebuild clean -configuration "$configuration" -alltargets
xcodebuild clean -configuration "$configuration" -alltargets | tee $log_path
\
echo $scheme
echo $workspace_name
echo $configuration
\
/usr/bin/security unlock-keychain -p 123456
\
# 5 归档(其他参数不指定的话,默认用的是.xcworkspace或.xcodeproj文件里的配置)
xcodebuild archive -workspace "$workspace_name" -scheme "$scheme" -configuration "$configuration" -archivePath "$archive_path" CODE_SIGN_IDENTITY="$codeSignIdentity" PROVISIONING_PROFILE="$provision_UUID" | tee $log_path
\
# 6 导出IPA
xcodebuild -exportArchive -archivePath "$archive_path" -exportPath "$ipa_path" -exportOptionsPlist "$exportOptionsPlist_path" | tee $log_path
\
# 7 删除项目目录下产生的build文件
rm -rf "$cur_dir/build"
\
#上传到蒲公英
#蒲公英上的user Key
uKey=“xxxx”
#蒲公英上的API Key
apiKey=“x’x’x’x’x”
\
#要上传的ipa文件路径
echo $upload_path
#执行上传至蒲公英的命令
echo "++++++++++++++upload+++++++++++++"
curl -F "file=@${upload_path}/$APP_NAME.ipa" -F "uKey=${uKey}" -F "_api_key=${apiKey}" <https://www.pgyer.com/apiv2/app/upload>