由于安全的原因,客户不会把app的 distribution provisioning profile给开发者的,但是可以给一个development provisioning profile。这种情况下,我们把code signing中的provisioning profile的release版本设置为development provisioning profile,之后就可以进行archive了,再把archive发送给客户,他可以通过Organizer进行后续的发布操作。

这里面主要涉及了archive 和 distribution的知识。

archive不对provisioning profile做过多检测,只需要满足最低要求就可以:能够在真机运行的标准。所以,即使像下图这样的设定,也可以顺利archive:

而且,仅仅使用开发者provisioning profile再xcode7以上,也是可以导出ipa的。证明一下,下面是使用*类型的provisioning profile,进行export ipa的最后一步的截图:

我们再看看Organization中的几种发布方法,看下图:

我们刚才使用的是第四个选项,只需要development provisioning profile就可以了,但是前3个各自需要不同类型的 distribution provisioning profile。

其中第四个选项比较容易疑惑,什么叫development deployment呢,其实就是把cer和provisioning profile都用对应的dev版本,生成一个ipa,能够debug的设备都可以安装,这样看来,作用和 adhoc 有相似之处。

这个选项是xcode7.0之后出现的,经过我的测试,当设备被关联进development provisioning profile后,生成的ipa可以直接安装在这个设备上,而且不像用Enterprise Deployment 发布的程序还需要在设备上点击信任证书的选项。我这里有一个疑问,它和Ad hoc deployment有什么区别呢?

通过下面的截图能看出,基本上分4种证书,App Development, In house, Ad hoc, App store.分别对应Organization中的4个选项,

不要把archive和 distribution搞混了,真正的distribution是在Organizer中进行的。archive时的bundle id是非常关键的,bundle id确定后,必须选择对应的certificate的team才能进行发布,而且Organizer会在distribution过程中根据这个id去找匹配provisioning profile,如果有相应的provisioning profile 就可以发布,并不对archive时的证书做过多要求,Organizer回自动用合适的证书替换archive时的错误证书。

我把一个用develop provisioning profile的archive 分别用Development deployment 和 ad hoc deployment (已经申请了ad hoc证书)进行打包ipa,生成ipa后,对比这2个包中的embedded.mobileprovision文件,发现是不同的,由此,可以看出Organizer确实自行更改了 provisioning profile。

iOS 向客户发送xcarchive文件(整理中)的更多相关文章

  1. 如何在微信中发送"相册"文件时有选择性地显示视频文件

    相信很多微信用户在使用微信给朋友,同事发送相册中的文件时,微信会显示你手机中的视频文件,这样很不方便. 如果要完全不显示视频文件: 随便在手机中建立一个文件夹,名字叫 ".nomedia&q ...

  2. 使用头文件climits中的符号常量获知整型数据的表数范围---gyy整理

    在头文件climits(limits.h)以宏定义的方式定义了各种符号常量来表示各种整型类型表示数的范围,如int的最大最小值,long的最大最小值等. 符号常量 表示 CHAR_BIT char 的 ...

  3. 使用头文件cfloat中的符号常量获知浮点类型数据的表数范围---gyy整理

    使用头文件cfloat中的符号常量获知浮点类型数据的表数范围 cfloat头文件包含了系统的浮点数的长度限制 头文件climits中的符号常量是获知整型数据的表数范围,并不能获取浮点类型数据的表数范围 ...

  4. 文顶顶iOS开发博客链接整理及部分项目源代码下载

    文顶顶iOS开发博客链接整理及部分项目源代码下载   网上的iOS开发的教程很多,但是像cnblogs博主文顶顶的博客这样内容图文并茂,代码齐全,示例经典,原理也有阐述,覆盖面宽广,自成系统的系列教程 ...

  5. iOS开发网络篇—文件的上传

    iOS开发网络篇—文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代 ...

  6. iOS 开发http post 文件的上传

    iOS开发网络篇—文件的上传 说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中.本文介绍如何不借助第三方框架实现iOS开发中得文件上传. 由于过程较为复杂,因此本文只贴出部分关键代 ...

  7. iOS应用程序工程文件以及启动流程

    转载请标明出处: http://blog.csdn.net/xmxkf/article/details/51351188 本文出自:[openXu的博客] iOS程序启动流程 完整启动流程 UIApp ...

  8. iOS崩溃日志ips文件解析

    iOS崩溃日志ips文件解析  一 简介 测试组的同事在进行稳定性测试时,通常会遇到一些崩溃,然后他们会将这些崩溃日志(一般是ips格式的文件)反馈给开发进行分析,但是这些ips文件中的内容通常是如下 ...

  9. IOS下载查看PDF文件(有下载进度)

    IOS(object-c) 下载查看 PDF 其实还是蛮容易操作的.在下载前,首先要把 IOS 可以保存文件的目录给过一遍: IOS 文件保存目录 IOS 可以自定义写入的文件目录,是很有限的,只能是 ...

随机推荐

  1. 验证LeetCode Surrounded Regions 包围区域的DFS方法

    在LeetCode中的Surrounded Regions 包围区域这道题中,我们发现用DFS方法中的最后一个条件必须是j > 1,如下面的红色字体所示,如果写成j > 0的话无法通过OJ ...

  2. .bat文件和Jar包的生成及运行

    .bat文件和Jar包的生成及运行 1.Jar包简单介绍 Jar包是Java中所特有的一种压缩文档,有点类似于zip包,区别在于Jar包中有一个META-INF\MANIFEST.MF文件(在生成Ja ...

  3. C语言与内存模型初探

    #include<stdio.h> #include<string.h> int main(){ long long int a = 2<<30; char str ...

  4. airline 設定 安裝

    .vimrc " install airline plugin using Vundle Plugin 'vim-airline/vim-airline' " install ai ...

  5. __ block

    1.__block对象在block中是可以被修改.重新赋值的. 2.__block对象在block中不会被block强引用一次,从而不会出现循环引用问题. API Reference对__weak变量 ...

  6. asp.net mvc后台操作之读写xml控制首页动态页面开关显示

    一.背景 在asp.net mvc项目里,用户需要开拓几个活动版面,并以侧栏的方式呈现在首页右侧,几个活动时间不一致,为避免浏览者在活动未开放之时进入未开放的服务页面.因此不仅需要在活动代码中加入限制 ...

  7. 使用Shell创建GitHub仓库

    Github的代码仓库分为2种类型: 用户自己的代码仓库 组织的代码仓库 下面就使用Shell脚本创建这2种类型的代码仓库,脚本如下 创建用户自己的代码仓库 #!/bin/bash USER_NAME ...

  8. POJ 3349 Snowflake Snow Snowflakes(简单哈希)

    Snowflake Snow Snowflakes Time Limit: 4000MS   Memory Limit: 65536K Total Submissions: 39324   Accep ...

  9. Perplexity Vs Cross-entropy

    Evaluating a Language Model: Perplexity We have a serial of \(m\) sentences: \[s_1,s_2,\cdots,s_m\] ...

  10. RabbitMQ简介

    AMQP简介 在了解RabbitMQ之前,首先要了解AMQP协议.AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消 ...