xcodebuild 命令打包

2023-11-19

xcodebuild命令行打包,在使用xcodebuild编译后发现有些东西有些临时性质的东西,依然存在,搜索了一些资料,找到有clean的命令;在之前打包都是生成app文件,将app打包成ipa文件需要编写一个脚本,操作起来相对麻烦,原来xcode自带将app打包成ipa的命令xcrun,于是操作就变得如此简单了,步骤如下:
理解:xcodebuild负责将程序打包成.app文件
xcrun则负责给.app(签名并)打包成.ipa文件
首先,清除build记录:
/usr/bin/xcodebuild -target targetName clean
其次,执行build:

/usr/bin/xcodebuild -target targetName

如:xcodebuild -sdk iphonesimulator6.1

最户,将app打包为ipa:

/usr/bin/xcrun -sdk iphoneos PackageApplication -v /home/xxx.app -o /home/xxx.ipa

解释:-v 后面是app文件及所在路径,-o后面则是存放的ipa文件名及预存放的位置

如:xcrun -sdk iphoneos PackageApplication -v build/Release-iphonesimulator -o /Users/mac_hy/Desktop/svn/Prometheus/ZDPrometheus/build/testGuest.ipa


方法二:

     xcode工程其实是可以用命令行来build的,这样就可以用命令行编译出.app的文件,然后就可以打成ipa包。整个流程做到自动化后,就可以方便的做每日的daily build,便于产品和测试同事跟进进度,随时获得最新版本的ipa文件。
       xcode工程的命令行Build命令是 xcodebuild,用 --help 可以看到一些有用的参数。常用的是用xcodebuild -configuration Release 指定用Release方式编译。
       另外,将.app文件转成ipa包的方式也相当简单。具体方式是将 .app文件拷贝到一个名为 ipa/Payload的目录下,然后将ipa下的所有内容用zip打包即可:
      mkdir -p ipa/Payload
      cp -r ./Release-iphoneos/PRODUCT_NAME.app  ./ipa/Payload/
      cd ipa
      zip -r $FILE_NAME *

      如果要将打好的ipa包上传到服务器上面去,再加一些脚本即可,我们是放到一个再windows共享的web server目录下,于是可以用smbclient来连接windows共享和上传ipa包:
      echo "put FILE_NAME.ipa" | smbclient //主机名 -U 用户名%密码

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

xcodebuild 命令打包 的相关文章

  • (嵌入式开发)STM32 网站、开发工具使用、参考、数据手册下载不在求人

    目录 一 ST 常用资源网 1 1 ST 之数据手册与用户手册区别 1 2 如何搜索下载对应的芯片文档呢 二 CubeMX 的下载 2 1 如何下载CubeMX 相关软件 2 2 如何自己安装 2 3 CubeMX 资源包当中有什么 三 K
  • Pandas对Excel行和列进行操作

    获取行数据 filename 测试表 xlsx df pd DataFrame pd read excel filename df2 df df 状态 等待付款 df 状态 已提交 print df loc 6000 tolist 输出第6
  • laravel-admin 在指定的相册下添加照片

    相册与照片是一对多的关系 有以下需求 1 点开一条相册数据看到相册的照片列表 2 为相册添加照片时 表单中要看到相册的基本信息 以下是实现步骤 第一步 构建带参数路由 router gt resource manage albumid ph
  • 常用的chrome配置参数

    让chromedriver不打开网页在后台进行 如果对chrome的启动参数感兴趣可以去看看脑补连接 from selenium import webdriver chrome options webdriver ChromeOptions
  • 解决pycharm安装python第三方库时遇到的问题——pycharm实体环境与虚拟环境

    目录 关于cmd打开cd操作的提示 1 pycharm虚拟环境和本地环境有啥区别 2 实体环境和虚拟环境怎么安装库 3 如何查询实体环境安装的库和虚拟环境安装的库 4 怎么切换本地环境或虚拟环境 5 总结使用pycharm时常见的3中环境
  • Jenkins插件开发之环境构建

    1 环境 1 1 jdk 1 1 1 下载 Java Platform Standard Edition 8 ReferenceImplementations 或其他途径下载 1 1 2 java环境配置 1 1 2 1 右键此电脑 属性
  • 【Python】实用小脚本

    本文整理了我在学习和工作中用到的实用python脚本 希望也能帮助到需要的小伙伴 文章目录 视频格式转换 pip快速下载命令 多进程处理百万图片数据集 视频格式转换 安装视频处理库moviepy pip install moviepy 安装
  • 【程序员面试金典】请设计一个算法,求出a和b点的最近公共祖先的编号。

    题目描述 有一棵无穷大的满二叉树 其结点按根结点一层一层地从左往右依次编号 根结点编号为1 现在有两个结点a b 请设计一个算法 求出a和b点的最近公共祖先的编号 给定两个int a b 为给定结点的编号 请返回a和b的最近公共祖先的编号
  • JavaWeb servlet的使用

    在jsp文件中没有java代码我们才算是学完啦 从EL表达式和JSTL标签 在减少在login jsp和index jsp中的java代码 而今天的学习是让在jsp中彻底没有java代码 原本写在doLogin jsp做登录判断的java代
  • 图像检索传统算法学习笔记

    图像检索领域传统算法学习笔记 与组内同学一起找到的一些图像检索传统算法 作一小结 以防忘记 性能统计 传统图像检索算法 CIFAR 10数据集mAP值 编码数不同 LSH局部敏感哈希 0 116 0 131 SH谱哈希 0 124 0 12
  • PhotoShop 之钢笔工具

    钢笔工具如下如 1 绘制直线 若按住Shift 键 单击鼠标左键可以绘制90度或者45度直线 按住Ctrl 并在空白处 单击鼠标左键 可退出绘制模式 2 绘制曲线 绘制第一个点单击 绘制第二个点的时候 按住鼠标左键并拖动即可绘制曲线 若想绘
  • 栈的讲解及实现(图解+代码/C语言)

    今天为大家分享的是栈的模拟实现 本文主要讲解如何以数组的形式模拟实现 同时给出链表模拟实现栈的代码 目录 图解栈的结构 数组模拟栈的分步实现 创建并初始化 入栈 检测栈是否为空 出栈 获取栈顶元素 获取栈内有效元素个数 销毁栈 链表模拟实现
  • 世界名着100部简介

    01 傲慢与偏见 02 孤星血泪 03 雾都孤儿 04 唐 吉诃德 05 安娜 卡列尼娜 06 飘 07 简 爱 08 悲惨世界 09 茶花女 10 基督山恩仇记 11 童 年 12 这里的黎明静悄悄 13 钢铁是怎样炼成的 14 战争与和
  • linux安装和卸载gcc g 4.8,CentOS 编译安装gcc 4.8 为了支持C++11新特性

    gcc属于gun软件 下载gun所有软件 1 编译gcc的时候 还是需要存在gcc g 2 等编译完成 卸载系统的gcc g 3 测试c 11 chunli CentOS sudoyuminstallgccgcc c chunli Cent
  • pathon爬虫,制作云图

    转载请标明出处 http blog csdn net forezp article details 70198541 本文出自方志朋的博客 今天一时兴起 想用Python爬爬自己的博客 通过数据聚合 制作高逼格的云图 对词汇出现频率视觉上的
  • 关于xilinx BRAM IP的延迟以及流程

    关于RAM IP的延迟 1 选择了output registers 可以在RAM输出端口添加register 也可以在core的输出添加 在primitives添加 降低clock to out到primitive的延迟 在core添加re
  • MySQL之数据库引擎详解(内附面试题:InnoDB和MyISAM的联系与区别)

    Welcome Huihui s Code World 接下来看看由辉辉所写的关于MySQL数据库引擎的相关操作吧 目录 Welcome Huihui s Code World 一 数据库引擎是什么 1 数据库引擎概念 2 最常见的引擎 I
  • Hive:Unable to open a test connection to the given database. JDBC url = jdbc:mysql://master12:3306

    hive启动不成功 一直报各种错 我是执行这条命令出的错 hive service metastore 这个问题困扰了我两三天一直没解决 网上找了各种方法基本都试过 还是不行 可能每个人的原因也不太一样吧 我说我的解决方法 可以试下 1 检
  • 曼哈顿算法公式_Manhattan Distance Calculation(曼哈顿距离算法)

    首先介绍一下曼哈顿 曼哈顿是一个极为繁华的街区 高楼林立 街道纵横 从A地点到达B地点没有直线路径 必须绕道 而且至少要经C地点 走AC和CB才能到达 由于街道很规则 ACB就像一个直角3角形 AB是斜边 AC和CB是直角边 根据毕达格拉斯
  • 【springboot+mybatisplus】分页查询-单表/联表

    参考链接 https www jianshu com p 0a21569f1e06 单表的分页查询用mybatisplus的selectPage就可以实现 联表的分页查询需要自己写sql语句 因为老哥不让写sql语句在DAO层 难看 所以写

随机推荐

  • 图书信息添加

    实现图书信息添加的添加功能并创建字符编码过滤器 避免中文乱码现象的产生 1 创建字符编码过滤器对象 创建字符编码过滤器对象 其名称为CharactorFilter类 该类实现了javax servlet Filter接口 并在doFilte
  • AD采样出来的数值与实际值之间的关系

    当刚接触AD采样时 一直对于AD采集出来的数值与实际的值之间的关系有些模糊 现在闲暇下来打算记录一下 这里以采集量为电压量来记录 当采集温度 电流等模拟量时 都是通过一个电路把模拟量转化为一个电压量输入进AD采样引脚 就不一一叙述 AD采样
  • 结构体对齐(内存对齐)

    本文转自 http www ksarea com articles 20071004 sizeof struct memory html 有的时候 在脑海中停顿了很久的 显而易见 的东西 其实根本上就是错误的 就拿下面的问题来看 struc
  • 【面试刷题】——C++公有继承保护继承和私有继承

    在C 中 有三种继承方式 公有继承 public inheritance 保护继承 protected inheritance 和私有继承 private inheritance 这些继承方式决定了派生类如何继承基类的成员和访问权限 公有继
  • 一文揭秘饿了么跨端技术的演进、实践与落地

    本文会先带领大家一起简单回顾下跨端技术背景与演进历程与在这一波儿接着一波儿的跨端浪潮中的饿了么跨端现状 以及在这个背景下 相较于业界基于 React Vue 研发习惯出发的各种跨端方案 饿了么为什么会选择走另外一条路 这个过程中我们的一些思
  • python稳健回归_statsmodel线性回归(ols)的稳健性问题-Python

    我用统计模型测试了一些基本的类别回归 我建立了一个确定性模型Y X Z 其中X可以取3个值 a b或c Z只能取2 d或e 在那个阶段 模型是完全确定的 我为每个变量设置了如下的权重a s weight 1 b s weight 2 c s
  • Vue基础1:生命周期汇总(vue2)

    Description 生命周期图 可以理解vue生命周期就是指vue实例从创建到销毁的过程 在vue中分为9个阶段 创建前 后 载入前 后 更新前 后 销毁前 后 其他 常用的有 created mounted destroyed 一 创
  • Java中String 和 int 的相互转换

    int gt String int i 12345 String s 第一种方法 s i 第二种方法 s String valueOf i 这两种方法有什么区别呢 作用是不是一样的呢 是不是在任何下都能互换呢 String gt int s
  • 假期实习-踩坑日记

    vue3 x 7 16 elementplus 导入 不同于2 0的导入方式 3 x中main js应当改成如下 import createApp from vue import installElementPlus from plugin
  • 黑盒测试用例设计--题目2

    1 根据下面给出的规格说明 进行测试用例的设计 一个程序读入3个整数 把这三个数值看作一个三角形的3条边的长度值 这个程序要打印出信息 说明这个三角形是普通的 是等腰的 还是等边的 测试用例 2 保险费率计算 某保险公司承担人寿保险 该公司
  • vue中阻止冒泡 阻止默认行为

    1 事件冒泡 不再派发事件 方法 event stopPropagation html
  • 分享一款谷歌插件adguard

    下载地址 链接 https pan baidu com s 1jMAA6kNMr1yqjQKXb7aMtQ 提取码 0kk3
  • PowerShell基础教程(5)——如何自定义 Windows PowerShell

    PowerShell基础教程 5 如何自定义 Windows PowerShell
  • RK3568 IDB烧录失败解决方法

    1 简介 公司有个RK3568的项目使用了三星的8GB eMMC5 1 KLM8G1GETF B041 但在硬件回板的时候 发现个别单板程序烧不进去 会报下载IDB失败 部分串口打印日志如下 DDR Version V1 09 202106
  • 【Grafana】CentOS下安装Grafana

    Grafana CentOS下安装Grafana 本文主要是在CentOS下对Grafana的安装和配置等进行介绍 以及一些踩过的坑 文章目录 Grafana CentOS下安装Grafana 一 基本介绍 二 安装方法 1 从YUM存储库
  • Android SQLite数据库升级

    Android操作SQLite数据库要实现SQLiteOpenHelper类 SQLiteOpenHelper的实现类要重写两个方法onCreate和onUpgrade onUpgrade方法就是用于SQLite数据库升级 问题一 数据库升
  • 2022年2月份谷哥学术资源分享下载列表 20/20

    资源名称 下载地址 关键词 项目反应理论与经典测验理论之比较 pdf https download csdn net download tysonchiu 79246540 技术文档 响应面方法在优化微生物培养基中的应用 pdf https
  • unity 如何切换输入系统(Input System)

    问题描述 在 Unity2019 版本中 加入了新的 Input System Package 当导入包的时候可能会将旧的输入系统禁用 这时如果再打开使用旧的输入系统的项目可能会出现异常 InvalidOperationException
  • jvm 远程调试配置

    jstatd方式 创建配置文件 随便找个目录就可以 cat gt jstatd policy grant codebase file java home lib tools jar permission java security AllP
  • xcodebuild 命令打包

    xcodebuild命令行打包 在使用xcodebuild编译后发现有些东西有些临时性质的东西 依然存在 搜索了一些资料 找到有clean的命令 在之前打包都是生成app文件 将app打包成ipa文件需要编写一个脚本 操作起来相对麻烦 原来