iOS一般是通过xcode进行打包的,然而打包的时候需要配置证书 描述文件等,还需要进行各种点击继续。当然也有比较简单的方法通过shell脚本来打包,其主要是通过xcodebuild xcrun来实现配置证书打包的。当然这里先说shell脚本了,它里面是以
#!/bin/bash开头的,然后文件的名字是以.sh结尾的。
#打包使用的描述文件
PROVISIONING_PROFILE="6c56ce0e-3095-4ac1-bdd7-f2273c1e0851"
#打包使用的证书
Code_Sign_Identity="iPhone Distribution:Shenzhen Wanjiaan Industrial Co.,Ltd"
#打包的类型Debug/Release
Configure=Release
#命令行传入的第一个参数,它的使用方法是在运行XX.sh时加入 比如我用的就是./LuYan.sh 01这里的01就是参数
Build_Number=$1
#获取当前系统时间
#Build_Date=`date +%y%m%d`
Build_Date=$(date +%Y%m%d)
echo"${Code_Sign_Identity}"
#目标的名字,前提是target存在
target_name=LuYan
workspace_path=~/Desktop/jingchangluyan/LuYan/LuYan
build_path=~/Desktop/jingchangluyan/LuYan/build
echo "${workspace_path}"
ipa_path=~/Desktop/jingchangluyan
#通过证书描述文件打包
xcodebuild -project ${workspace_path}.xcodeproj -target ${target_name} -configuration ${Configure} clean -sdk iphoneos build CODE_SIGN_IDENTITY="${Code_Sign_Identity}" PROVISIONING_PROFILE="${PROVISIONING_PROFILE}"
echo "***********build success***************\n"
#将app包转换成ipa
xcrun -sdk iphoneos -v PackageApplication ${build_path}/${Configure}-iphoneos/LuYan.app -o ${ipa_path}/${target_name}_${Build_Date}${Build_Number}
.ipa
echo "*******trans to ipa success************\n"
#删除编译文件
rm -r ${build_path}
echo "************remove build success**************"
以上是一般项目进行打包,如果是cocoapods项目则打包时用另一种方式,其余的都一样
xcodebuild -workspace name.xcworkspace -scheme schemename -configuration ${Configure} -sdk phones build CODE_SIGN_IDENTITY="${CODE_SIGN_IDENTITY}" PROVISIONING_PROFILE="${PROVISIONING_PROFILE}"
运行的时候直接从命令行进入到.sh所在的目录下然后./XX.sh,运行的时候如果出现权限问题可以用chomd +x XX.sh对XX.sh的权限进行修改