ios shell打包脚本 xctool
#! /bin/bash project_path=$(dirname $) project_config=Release output_path=~/Desktop build_scheme=YKTicketsApp workspace_name=YKTicketsApp parameter=":p:c:o:s:w:h:" while getopts $parameter optname
do
case "$optname" in
"p" )
project_path=$OPTARG
;;
"c" )
project_config=$OPTARG
;;
"o" )
output_path=$OPTARG
;;
"s" )
build_scheme=$OPTARG
;;
"w" )
workspace_name=$OPTARG
;;
"h" )
echo " -p 项目路径,默认为当前路径"
echo " -c 定制版配置名称,默认为Release"
echo " -o 打包输出路径,默认为桌面"
echo " -s 打包使用策略,默认为YKTicketsApp"
echo " -w 打包workspace名,默认为YKTicketsApp"
exit
;;
* )
echo " 无效参数"
echo " -p 项目路径,默认为当前路径"
echo " -c 定制版配置名称,默认为Release"
echo " -o 打包输出路径,默认为桌面"
echo " -s 打包使用策略,默认为YKTicketsApp"
echo " -w 打包workspace名,默认为YKTicketsApp"
exit
;;
esac
done workspace_file="${project_path}/${workspace_name}.xcworkspace" date_time="$(date +"%Y%m%d_%H%M%S")" archive_file="${output_path}/${date_time}_${project_config}.xcarchive" ipa_file="${output_path}/${date_time}_${project_config}.ipa" #cd $project_path #pod_cmd='pod update --verbose --no-repo-update' #$pod_cmd clean_cmd="xctool clean"
clean_cmd="${clean_cmd} -workspace ${workspace_file}"
clean_cmd="${clean_cmd} -scheme ${build_scheme}"
clean_cmd="${clean_cmd} -configuration ${project_config}" echo ${clean_cmd} $clean_cmd if [ $? -ne ]; then
echo "清理项目失败,请检查工程。"
exit
fi build_cmd="xctool build"
build_cmd="${build_cmd} -workspace ${workspace_file}"
build_cmd="${build_cmd} -scheme ${build_scheme}"
build_cmd="${build_cmd} -configuration ${project_config} archive"
build_cmd="${build_cmd} -archivePath ${archive_file}" echo ${build_cmd} $build_cmd if [ $? -ne ]; then
echo "构建项目失败,请检查工程。"
exit
fi xcodebuild -exportArchive -archivePath ${archive_path} -exportPath ${ipa_path} -exportFormat ipa run_cmd="xcrun -sdk iphoneos"
run_cmd="${run_cmd} PackageApplication -v"
run_cmd="${run_cmd} ${archive_file}/Products/Applications/YKTicketsApp.app"
run_cmd="${run_cmd} -o ${ipa_file}" echo ${run_cmd} $run_cmd if [ $? -ne ]; then
echo "打包项目失败,请检查工程。"
exit
fi
ios shell打包脚本 xctool的更多相关文章
- ios shell打包脚本 xcodebuild
#! /bin/bash project_path=$() project_config=Release output_path=~/Desktop build_scheme=YKTicketsApp ...
- ios shell打包脚本 gym
#! /bin/bash project_path=$() project_config=Release output_path=~/Desktop build_scheme=YKTicketsApp ...
- xcode8.3 shell 自动打包脚本 记录
题记 xcode升级8.3后发现之前所用的xcode自动打包基本无法使用,因此在网上零碎找到些资料,将之前的脚本简化.此次脚本是基于xcode证书配置进行打包(之前是指定描述文件.相对繁琐).因此代码 ...
- 40、IOS自动打包-Python脚本
第一种:基于编译的打包 编译工程--找到.app文件--新建Payload文件夹--拷贝.app到Payload文件夹--压缩成zip--更改后缀名为ipa--完成! 第二种(有问题,暂时不需要看) ...
- xcode8.3 shell 自动打包脚本
题记 xcode升级8.3后发现之前所用的xcode自动打包基本无法使用,因此在网上零碎找到些资料,将之前的脚本简化.此次脚本是基于xcode证书配置进行打包(之前是指定描述文件.相对繁琐).因此代码 ...
- 使用BUCK进行iOS项目打包
关于BUCK BUCK是Facebook开源的快速打包工具,可以用于多种语言及平台的项目打包,例如:C.C++.Java.iOS.Android等等.用于大型的iOS.Android项目,可以显著提升 ...
- Unity3D研究院之IOS全自动打包生成ipa
接着上一篇文章, 自动生成framework,这篇文章我把shell自动化打包ipa整理了一下,希望大家喜欢,嘿嘿.. 建议大家先看一下上一篇文章.http://www.xuanyusong.com/ ...
- ios自动打包-fastlane 安装、使用、更新和卸载
ios自动打包使用fastlane 1.首先安装xcode 首先检查是否已经安装 Xcode 命令行工具,fastlane 使用 xcodebuild 命令进行打包,运行 xcode-select - ...
- React Native开发中自动打包脚本
React Native开发中自动打包脚本 在日常的RN开发中,我们避免不了需要将我们编写的代码编译成安装包,然后生成二维码,供需要测试的人员扫描下载.但是对于非原生的开发人员来说,可能不知如何使用X ...
随机推荐
- 一步步去阅读koa源码,整体架构分析
阅读好的框架的源码有很多好处,从大神的视角去理解整个框架的设计思想.大到架构设计,小到可取的命名风格,还有设计模式.实现某类功能使用到的数据结构和算法等等. 使用koa 其实某个框架阅读源码的时候,首 ...
- Javascript Event事件中IE与标准DOM的区别
1.事件流的区别 <body> <div> <button>点击这里</button> </div> </body> IE采用冒 ...
- 【猫狗数据集】pytorch训练猫狗数据集之创建数据集
猫狗数据集的分为训练集25000张,在训练集中猫和狗的图像是混在一起的,pytorch读取数据集有两种方式,第一种方式是将不同类别的图片放于其对应的类文件夹中,另一种是实现读取数据集类,该类继承tor ...
- frp 内网穿透访问内网Web服务
ps:最近想要通过域名(公网)访问或者测试在本地搭建的 web 服务(不想在公网IP服务器上再部署个服务,也不想通过teamview等工具远程卡到爆!), 由于本地机器没有公网 IP,无法将域名解析到 ...
- java并发编程基础概念
本次内容主要讲进程和线程.CPU核心数和线程数.CPU时间片轮转机制.上下文切换,并行和并发的基本概念以及并发编程的好处和注意事项,为java并发编程打下扎实基础. 1.什么是进程和线程 1.1 进程 ...
- git的日常使用(补课)
使用git的一些反响 如果在github上做一个仓库来使用的话... 首先手动在github上创建一个空的仓库,默认没有任何东西的 使用git的命令 git pull 创建的github仓库地址 能把 ...
- Python3 面向对象之:单继承
一:什么面向对象的继承? 比较官方的说法就是: 继承(英语:inheritance)是面向对象软件技术当中的一个概念.如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称为“A ...
- Windows下EDK2环境的搭建以及经典的程序设计Print Hello World !-----(Linux下的待后续熟练了再更新)
很久没有更新博客了,之前的博客末尾有提到过要写有关EDK2环境搭建的博客,现在就是完成的时候了,后续博客更新会比较规律(大概每周一篇?) 本人博客仅仅发表于博客园,本人主页为 http ...
- XSS(跨站脚本攻击)详解
跨站脚本攻击XSS(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意攻击者往Web ...
- Asp.net textbox 控件 的 onTextChange 事件
<asp:TextBox ID="txt_MailType" runat="server" OnTextChanged="exitMailTyp ...