主要使用两个命令

xcodebuild:将xcode工程打包成.app文件

xcrun:将app打包成.ipa文件

下面是写好的ant脚本:

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project default="release" name="PackageForIOS" basedir=".">
 3     <property name="xcodeProjectPath" value="/Users/xxx/Documents/IOS"/>
 4     <property name="appPath" value="${xcodeProjectPath}/build/xxx.app"/>
 5     <property name="ipaPath" value="${xcodeProjectPath}/build/xxx.ipa"/>
 6
 7     <!-- 证书 -->
 8     <property name="sign" value="iPhone Developer: xxx"/>
 9     <!-- 描述文件 -->
10     <property name="provision" value="xxx.mobileprovision"/>
11     <!-- provisionUUID根据provision生成 -->
12     <property name="provisionUUID" value="5cdcxxxx-4295-xxxx-bb44-cb4c89ee4245"/>
13
14     <target name="ipaBuild">
15          <exec executable="/bin/bash" dir="${xcodeProjectPath}">
16              <arg value="-c"/>
17              <arg value="xcodebuild clean"/>
18          </exec>
19
20          <echo message="Generate: ${appPath}" />
21          <exec executable="/bin/bash" dir="${xcodeProjectPath}">
22              <arg value="-c"/>
23              <arg value="xcodebuild CODE_SIGN_IDENTITY='${sign}' PROVISIONING_PROFILE=${provisionUUID}"/>
24          </exec>
25
26          <echo message="Generate: ${ipaPath}" />
27          <exec executable="/bin/bash" dir="${xcodeProjectPath}">
28              <arg value="-c"/>
29              <arg value="xcrun -sdk iphoneos PackageApplication -v ${appPath} -o ${ipaPath}"/>
30          </exec>
31      </target>
32 </project>

其中provisionUUID,需要根据描述文件*.mobileprovision来生成,生成代码如下:

1 #!/bin/bash
2
3 #描述文件存放的位置
4 provision=`pwd`/Dev_provision3.mobileprovision
5 #获取UUID
6 provisionUUID=`/usr/libexec/PlistBuddy -c 'Print :UUID' /dev/stdin <<< $(security cms -D -i ${provision} )`
7 echo provisionUUID

转载于:https://www.cnblogs.com/basenet855x/p/4314166.html

xcode工程命令行生成ipa安装包相关推荐

  1. winrar 命令行制作自解压安装包

    手动操作教程请参考:http://www.cnblogs.com/xwdreamer/p/3492140.html winrar安装目录中rar程序可以进行命令行操作执行压缩操作,详情可以参考winr ...

  2. winrar命令行打自解压安装包不生效问题

    set rar="C:\Program Files\WinRAR\RAR.exe" %rar% a -r -sfx -iadm -iiconlogo.ico -iimglogo.p ...

  3. Basic INFO - 在命令行Build InstallShield安装包工程获得压缩安装包

    在自动化编译过程中,我们可以通过IsCmdBuild进行InstallShield安装包工程编译. Basic MSI和InstallScript MSI工程可以通过IsCmdBuild的-c参数直接 ...

  4. 越狱设备免证书生成ipa安装包

    本文根据http://bbs.weiphone.com/read-htm-tid-7056725.html修改而来. 前提:     众所周知,在Xcode上开发的程序只能在模拟器中运行,如果要放到真 ...

  5. golang win10 命令行 go get 安装包到src目录

    在命令行使用go get将包安装到src目录下 首先需要判断判断命令行是否可以访问github网站 ping github.com看是否能成功. 如果失败转https://blog.csdn.net/ ...

  6. Ubuntu下如何用命令行运行deb安装包

    安装 sudo dpkg -i xxxx.deb #安装xxxx.deb软件包(其中-i等价于--install) 卸载 sudo dpkg -r xxxx #卸载xxxx软件包(软件名称可通过dpk ...

  7. iOS ipa 安装包安装失败原因

    前言 iOS 的内测应用在安装时,很多人都遇到过安装失败的情况,安装失败的原因比较多,下面将一些常见原因总结如下,方便开发者进行排查. 在 iOS 9 中启动应用时,出现提示"未受信任的企业 ...

  8. Qt 在mac上使用证书签名并生成pkg安装包

    @[TOC](Qt 在mac上生成pkg安装包)## 标题 1.使用Qt Creator编译出Release版本 2.将生成的app程序拷贝到新的目录 3.使用macdeployqt添加依赖库 mac ...

  9. 苹果ipa安装包分发下载教程

    环境准备 Linux服务器 Nginx资源服务器(存放manifest.plist+图标+ipa安装包) 一级域名 SSL证书绑定域名 manifest.plist描述文件 苹果签好名的安装包 两个A ...

最新文章

  1. PHP date()函数警告: It is not safe to rely on the system解决方法
  2. Linux必学60个命令文件处理
  3. Leetcode 79. 单词搜索 (每日一题 20210720 同类型题)
  4. 如何判断服务器之间的服务是否可用?ping 还是 telnet?
  5. Hadoop---在window下配置安装之cygwin的安装
  6. Struts2-day2总结
  7. Mysql(8)——as和distinct和where的用法
  8. 分析 Go time.After 引起内存暴增 OOM 问题
  9. Android数据存储之SQLite
  10. python的基础网络编程是下列_Python入门基础之网络编程、socket编程、TCP、UDP编程...
  11. c#10中的namespace
  12. 短连接生成器——让你的url地址长度变短
  13. Alios Things的Flash划分规则
  14. Windows Embedded Standard 7 剪裁随笔
  15. 做了3年Excel报表,换了这个报表神器后,不禁感叹:国产真香
  16. mqtt安装使用教程。(基于rabbitmq插件,docker部署,k8s部署,python教程)
  17. C++解析(31):自定义内存管理(完)
  18. ubantu 安装anaconad_Ubuntu16.04安装Anaconda (转)
  19. 阿里云移动推送iOS
  20. 世界人工智能大会开幕,云计算概念股大涨

热门文章

  1. 关系数据库——sql基础1定义
  2. 机器学习问题总结(02)
  3. 《Python Cookbook 3rd》笔记(3.8):分数运算
  4. output怎么用_用树莓派实现室内温度监控
  5. Android WebView 使用漏洞
  6. Android设计模式之——模板方法模式
  7. 我的职业生涯规划学习日记(软件工程)整理时间线
  8. GDB 调试程序 详解 使用实例
  9. ARM和NEON指令 very nice
  10. 中医:看脚十秒钟可知身体疾病