iOS 测试包打包自动化 笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xjh093/article/details/82996244

前言

之前写个一个自动打包脚本
https://github.com/xjh093/iOSAutoPacking

利用终端操作
还是得手动操作几步

有没有一步就搞定的呢?
有!


正文

真正 commond + B 打好测试包。(提前配置好调试证书等…)

Build Phases 添加一个脚本 New Run Script Phases

输入以下脚本:(格式不能错!一个空格都不行的)

if [ "${CONFIGURATION}" = "Debug" ] && [ -d "${BUILD_ROOT}/${CONFIGURATION}-iphoneos" ]
then
cd ${BUILD_ROOT}/${CONFIGURATION}-iphoneos
rm -rf Output
mkdir Payload
mkdir Output
cp -rf ${PROJECT_NAME}.app Payload/${PROJECT_NAME}.app
zip -r Output/${PROJECT_NAME}.ipa Payload
rm -rf Payload
open ./Output
fi

符号表 dSYM

如何生成对应的符号表?

需要先设置一下:
Build Setting
1. Debug Information Format -> DWARF with dSYM File
2. Generate Debug Symbols -> YES

配合脚本语句
cp -rf ${PROJECT_NAME}.app.dSYM Output/${PROJECT_NAME}.app.dSYM
rm -rf ${PROJECT_NAME}.app.dSYM

就可以了!

完整的脚本:

扫描二维码关注公众号,回复: 3987491 查看本文章
if [ "${CONFIGURATION}" = "Debug" ] && [ -d "${BUILD_ROOT}/${CONFIGURATION}-iphoneos" ]
then
cd ${BUILD_ROOT}/${CONFIGURATION}-iphoneos
rm -rf Output
mkdir Payload
mkdir Output
cp -rf ${PROJECT_NAME}.app Payload/${PROJECT_NAME}.app
zip -r Output/${PROJECT_NAME}.ipa Payload
rm -rf Payload
cp -rf ${PROJECT_NAME}.app.dSYM Output/${PROJECT_NAME}.app.dSYM
rm -rf ${PROJECT_NAME}.app.dSYM
open ./Output
fi

问题1

每次 Command + RCommand + B 都会打开一个文件夹
有点讨厌~

上面说了,格式不能错!一个空格都不行
可以去掉一个空格,让脚本执行没有效果
就不会每次打一个文件夹了

比如,把

if [ "${CONFIGURATION}" = "Debug" ] 

改成这样

if ["${CONFIGURATION}" = "Debug" ] 

等到真正要打包的时候
再改回来
就OK了!

问题2

切换账号打包,导致少了文件,无法安装
原因:调试证书未配置好
Build Setting -> Provisioning Profile

详细看图:
在这里插入图片描述


参考

更多细节:
https://www.jianshu.com/p/d1e7dd688df7

猜你喜欢

转载自blog.csdn.net/xjh093/article/details/82996244
今日推荐