iOS用脚本打ipa包

打ipa包, 最传统的从xcode中archive 就不说了 ,

写点省事的,脚本打包. 脚本打包前还是需要手动配置好工程的,脚本只能代替你完成点击archive 到生成ipa的过程, 证书配置是做不到的.

 说实话,第一次接触脚本,费了很多时间,看了2个小时视频,在加上看了点博客,懂了一点点语法,终于能看懂并且能运行了.  视频链接 http://study.163.com/course/courseMain.htm?courseId=306001  博客 http://blog.csdn.net/xiaominghimi/article/details/7603000

简单说,把下面内容复制到一个新的文件中,保存为脚本名.sh , 我不会告诉你,连这一步我当时都不会,保存成了 脚本名.shell , 然后 气得想砸电脑 .

然后 cd 进入脚本所在的文件夹    ,第一次执行需要给脚本开权限   以后就不用了    执行    chmod +x  脚本名.sh  

脚本有了权限后   执行  ./脚本名  工程所在路径  包名    就行了,  第一次看人家写的例子 , 他是(工程路径), 我没去掉括号, 就一直出错 , 发现这个错误后 感觉被狗日了,生无可恋了  .

运行成功后, 在工程所在路径下有一个build/ipa 文件夹,  里面就是ipa包了, 注意 证书设置 ,如果只是开发者,打出来的包是内测包,需要在开发者账号中添加设备才能运行 ,   企业证书打包 是 企业版, 不用添加设备了 .

#!/bin/bash

#参数判断
if [ $# != 2 ];then
echo "Params error!"
echo "Need two params: 1.path of project 2.name of ipa file"
exit
elif [ ! -d $1 ];then
echo "The first param is not a dictionary."
exit
fi


#工程路径
project_path=$1

#IPA名称
ipa_name=$2


#build文件夹路径
build_path=${project_path}/build


#编译工程
cd $project_path
xcodebuild || exit


#打包
cd $build_path
if [ -d ./ipa ];then
rm -rf ipa
fi

mkdir -p ipa/Payload
cp -r ./Release-iphoneos/*.app ./ipa/Payload/
cd ipa
zip -r ${ipa_name}.ipa *
rm -rf Payload

看完视频后就可以试着改一些参数了,   下面是修改完的. 其实就是把需要传的参数,写死在脚本里了. 不用以后传参数了   

#!/bin/bash

#工程路径
project_path="/Users/ly/Desktop/无名高地/完美启动页"

#IPA名称
ipa_name="完美启动页"

#build文件夹路径
build_path=${project_path}/build

#编译工程
cd $project_path
xcodebuild || exit

#打包
cd $build_path
if [ -d ./ipa ];then
rm -rf ipa
fi

mkdir -p ipa/Payload
cp -r ./Release-iphoneos/*.app ./ipa/Payload/
cd ipa
zip -r ${ipa_name}.ipa *
rm -rf Payload

还是一个是上传,  fir,蒲公英都可以, 我是采用了fir, https://github.com/FIRHQ/fir-cli

fir还是有很多坑 ,安装比较费事. 第一次浪费一下午,然而以后却节省了更多的时间,所以还是推荐这个.


后期主要用了这个脚本,和上面的相比来说,少了xcodebuild这一步,这一步我是自己command + B完成的.

说下用这个脚本打包的过程.
配置 : Sourse是xcode生成的.app路径,PayLoad可以是任意地方,一般是设置成桌面路径.除此以外还需要设置下fir的token.

打包:1.选择好证书;2.选择generic iOS Device;3.编译,command+B;4.编译完成后,执行此脚本. 执行完成后会打开一个网页.大功告成. 

熟练的话,打一个包2-3分钟即可完成.而且操作也很少.


# 参考文章 https://www.jianshu.com/p/1f47066da6f7

Sourse=/Users/edz/Library/Developer/Xcode/DerivedData/KPL-fwavfsoypkvtvgalgbsmmbrcqxdt/Build/Products/Debug-iphoneos/KPL.app

PayLoad=/Users/edz/Desktop/Payload

bag=/Users/edz/Desktop/ProgramBag

mkdir -p ${PayLoad}

cp -r ${Sourse}  ${PayLoad}

mkdir -p ${bag}

cp -r ${PayLoad} ${bag}

cd ${bag}

zip -r ./Payload.zip .

mv Payload.zip Payload.ipa

fir p ${bag}/Payload.ipa -T "fir的token"


yes | rm -r ${PayLoad}
yes | rm -r ${bag}

open https://fir.im/mp8y

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值