iOS证书分2种,1种是开发证书,用来给你(开发人员)做真机测试的;1种是发布证书,发布证书又分发布到app store的(这里不提及)和发布测试的ad hoc证书。

  那ad hoc证书和开发证书区别在哪里?如果你的tester(团队测试人员、客户)都能将测试设备拿到你面前,直接插到你的mac开发机上,你可以直接将程序“灌”进去,那有开发证书就够了,不需要ad hoc证书。

  如果tester的iOS设备不能直接让你灌程序,那怎么办?你必须打包(Archive)你的程序,然后发给你的tester,让他通过itunes进行安装,那就需要ad hoc证书了。
具体的区别,我们先看看ad hoc证书生成过程,和开发证书生成非常类似。

  1、进入Provisioning Portal主界面

  (如何进入Provisioning Portal主界面,可以参考“iOS程序发布测试2-获取Tester设备UDID”)

  2、选择Provisioning,然后选择Distribution

  这是开发证书和发布证书生成时的一个区别,在文章“iOS程序发布测试4-打包(Archive)发布(share)”中会说到使用的区别。

  3、选择“New Profile”,出现新建发布证书界面

  选择“Ad Hoc”,然后选择Tester的设备ID(如何获取和添加Tester设备ID,见“iOS程序发布测试3-获取Tester设备UDID”)。

  

  4、下载证书到本地

  点击“Download”,将证书下到本地。

  注:如果status是“pending”,刷新一下就成“Active”了。

  

  5、导入证书。双击,出现Xcode(我这里是4.0)provisioning界面

  证书生成好,而且导入了,接下来就是打包(Archive)和发布(share)了。

  iOS程序发布测试4-打包(Archive)发布(share)

  发布测试的最后一步打包(Archive)

  Xcode4帮助文档有比较详细介绍,但是居然是错的,这里说明一下

  1、设置“Build Settings”,下图是官方文档截图,留意那个红框,居然说反了

  "Skip install"一定要选NO,否则在下面的打包步骤后,Organizer看不到你的程序,就为这折腾我好些时间,国外论坛一堆问题,说我按照官方文档做了,怎么Organizer看不到程序。

  1.1 选择ad hoc证书.在“Code Signing”栏,选择你在文章(“iOS程序发布测试3-生成ad hoc证书”)生成的发布证书(ad hoc)

  这里要选择“iPhone Distribution”,而不是“iPhone Development”,否则会在下面打包(Archive)步骤报证书错误。

  2、编辑“Scheme”,选择菜单:Product -> Edit Scheme

  红色框部分要选对,注意要分别选iOS Device和Release。

  3、打包(Archive),选择菜单:Product->Archive,在organizer窗口可以看到你的程序

  然后点击“share”按钮,进行发布(share)

  4、Share

  选第一个“iOS App Store Package”,生成.ipa文件,你的Tester使用itunes即可安装。

  最后一个Archive,需要对方安装xcode。

最新文章

  1. HDU 1892 See you~ (二维树状数组)
  2. c++利用循环数组建立FIFO模板队列
  3. leetcode - 位运算题目汇总(上)
  4. React/React Native 的ES5 ES6写法对照表
  5. struts2中简单的文件上传
  6. RelativeLayout相对布局中拖放控件的办法
  7. js实现简单的滑动门和tab选项卡
  8. Nio Client
  9. windows phone 页面导航(6)
  10. 11.page,pagcontext,config对象
  11. 二:mysql安装配置、主从复制配置详解
  12. 解决Flink输出日志中时间比当前时间晚8个小时的问题
  13. java中的static代码块为什么只执行一次
  14. jQuery点击页面其他部分隐藏下拉菜单
  15. 浅谈使用NIO,AIO的感受
  16. Visual Studio 2017 以前的旧格式的 csproj Import 进来的 targets 文件有时不能正确计算属性(PropertyGroup)和集合(ItemGroup)
  17. session喜欢丢值且占内存,Cookis不安全,用什么可以代替呢?
  18. Delphi XE7功能之TMultiView
  19. SQLite中的自增关键字:AUTO_INCREMENT、INTEGER PRIMARY KEY与AUTOINCREMENT
  20. bash算术求值和errexit陷阱

热门文章

  1. [DllImport("kernel32.dll")]是什么意思??
  2. C语言函数返回数组
  3. hive搭建配置
  4. 【Valid Parentheses】cpp
  5. MySQL 字符串截取相关函数
  6. 读书笔记:<世界是数字的>
  7. IIS OCIEnvCreate failed with return code -1
  8. 【BZOJ】【3261】最大异或和
  9. NGP处理包
  10. LCA 笔记