(转自:http://blog.csdn.net/gtncwy/article/details/8617788)

一、成员介绍
1.    Certification(证书)
证书是对电脑开发资格的认证,每个开发者帐号有一套,分为两种:
1)    Developer Certification(开发证书)
安装在电脑上提供权限:开发人员通过设备进行真机测试。
可以生成副本供多台电脑安装;
2)      Distribution Certification(发布证书)
安装在电脑上提供发布iOS程序的权限:开发人员可以制做测试版和发布版的程序。
不可生成副本,仅有配置该证书的电脑才可使用;(副本制做介绍在下面Keychain中介绍)

2.    Provisioning Profile(授权文件)
授权文件是对设备如iPod Touch、iPad、iPhone的授权,文件内记录的是设备的UDID和程序的App Id,即使被授权的设备可以安装或调试Bundle identifier与授权文件中记录的App Id对应的程序。
开发者帐号在创建授权文件时候会选择App Id,(开发者帐号下App Id中添加,单选)和UDID(开发者帐号下Devices中添加最多100个,多选)。
授权文件分为两种,对应相应的证书使用:
1)    Developer Provisioning Profile(开发授权文件)
在装有开发证书或副本的电脑上使用,开发人员选择该授权文件通过电脑将程序安装到授权文件记录的设备中,即可进行真机测试。
注意:确保电脑有权限真机调试,即安装了开发证书或副本;在开发工具中程序的Bundle identifier和选中使用的授权文件的App Id要一致;连接调试的设备的UDID在选中的授权文件中有记录。
2)    Distribution Provisioning Profile(发布授权文件)
在装有发布证书的电脑上(即配置证书的电脑,只有一台)制做测试版和发布版的程序。
发布版就是发布到App Store上的程序文件,开发者帐号创建授权文件时选择store选项,选择App Id,无需选择UDID;
测试版就是在发布之前交给测试人员可同步到设备上的程序文件,开发者帐号创建授权文件时选择AdHoc,选择App Id和UDID;只有选中的UDID对应的设备才可能安装上通过该授权文件制做的程序。
3.    Keychain(开发密钥)
安装证书成功的情况下证书下都会生成Keychain,上面提到的证书副本就是通过配置证书的电脑导出Keychain(就是.p12文件)安装到其他机子上,让其他机子得到证书对应的权限。Developer Certification就可以制做副本Keychain分发到其他电脑上安装,使其可以进行真机测试。

注意:Distribution Certification只有配置证书的电脑才可使用,因此即使导出导出Keychain安装到其他电脑上,其他电脑也不可能具有证书的权限。

iOS 开发和部署过程概述

下表提供了 iOS 开发过程步骤的快速列表、如何获得必需的证书以及每个步骤的先决条件。

有关其中每个步骤的详细信息,请参阅构建、调试或部署 iOS 应用程序前的准备工作。

步骤编号

步骤

位置

先决条件

1.

加入 Apple 开发者计划。

Apple Developer 站点

2.

注册 iOS 设备的唯一设备标识符 (UDID)。

iOS 配置门户

Apple 开发者 ID(第 1 步)

3.

生成证书签名请求 (CSR) 文件 (*.certSigningRequest)。

  • 在 Mac OS 中,使用 Keychain Access 程序

  • 在 Windows 中,使用 OpenSSL

4.

生成 iOS 开发者/分发证书 (*.cer)。

iOS 配置门户

  • Apple 开发者 ID(第 1 步)

  • CSR 文件(第 3 步)

5.

将 iOS 开发者/分发证书转换为 P12 格式。

(发布后APPSTORE用这个来识别你是哪个公司或个人,

包含开发和发行两种版本)

  • 在 Mac OS 中,使用 Keychain Access 程序

  • 在 Windows 中,使用 OpenSSL

  • Apple 开发者 ID(第 1 步)

  • iOS 开发者/分发证书(第 4 步)

6.

生成应用程序 ID。(标示两个不同的应用)

iOS 配置门户

Apple 开发者 ID(第 1 步)

7.

生成配置概要文件 (*.mobileprovision)包含一组数据

信息,它能够将开发人员和设备与经过认可的 iOS 开

发团队绑定在一起,并且能够启用用于测试的设备它

包含一组 iOS 开发证书、若干设备 ID和一个应用程序

ID,并且它必须安装于你希望运行你的应用程序的每

个设备上另一方面,发行配置文件可能包含设备数据

信息,它依据你是否希望为特定设备的特别发行或通

过 Apple App Store 创建应用程序包。Apple 只接受采

用 App Store 发行配置文件创建的应用程序,但采用

App Store 配置文件创建的

iOS 配置门户

  • Apple 开发者 ID(第 1 步)

  • iOS 设备的 UDID(第 2 步)

  • 应用程序 ID(第 6 步)

8.

构建应用程序。

Flash Builder

  • Apple 开发者 ID(第 1 步)

  • P12 开发者/分发证书(第 5 步)

  • 应用程序 ID(第 6 步)

9.

部署应用程序。

iTunes

  • 配置概要文件(第 7 步)

  • 应用程序包(第 8 步)

构建、调试或部署 iOS 应用程序前的准备工作

在使用 Flash Builder 构建 iOS 应用程序并将该应用程序部署在 iOS 设备上或提交到 Apple App Store 之前,请执行以下步骤:

  1. 加入 Apple iOS 开发者计划。

    您可以使用现有的 Apple ID 登录或创建一个 Apple ID。Apple 开发者注册向导将指导您完成必要的步骤。

  2. 注册设备的唯一设备标识符 (UDID)。

    仅在您将应用程序部署到 iOS 设备而不是 Apple App Store 中时,该步骤才适用。如果您要在多个 iOS 设备上部署应用程序,请注册每个设备的 UDID。

    获得 iOS 设备的 UDID

    1. 将 iOS 设备连接到开发计算机并启动 iTunes。连接的 iOS 设备将显示在 iTunes 中的“设备”部分下。

    2. 单击设备名称显示 iOS 设备的摘要。

    3. 在“摘要”选项卡中,单击“序列号”可显示 iOS 设备的包含 40 个字符的 UDID。

      您可以使用键盘快捷键 Ctrl+C (Windows) 或 Cmd+C (Mac) 从 iTunes 复制该 UDID。

    注册设备的 UDID

    使用 Apple ID 登录 iOS 配置门户并注册该设备的 UDID。

  3. 生成证书签名请求 (CSR) 文件 (*.certSigningRequest)。

    将生成 CSR 以获得 iOS 开发者/分发证书。可以通过使用 Mac 上的 Keychain Access 或 Windows 上的 OpenSSL 生成 CSR。生成 CSR 时,只需提供用户名和电子邮件地址;无需提供有关应用程序或设备的任何信息。

    生成 CSR 会创建公钥、私钥以及 *.certSigningRequest 文件。公钥包含在 CSR 中,私钥用于为请求签名。

    有关生成 CSR 的更多信息,请参阅生成证书签名请求。

  4. 根据需要生成 iOS 开发者证书或 iOS 分发证书 (*.cer)。

    注: 要将应用程序部署到设备中,需要开发者证书。要将应用程序部署到 Apple App Store 中,需要分发证书。

    生成 iOS 开发者证书

    1. 使用 Apple ID 登录 iOS 配置门户,然后选择“开发”选项卡。

    2. 单击“请求证书”,然后浏览至您在计算机上生成并保存(第 3 步)的 CSR 文件。

    3. 选中 CSR 文件并单击“提交”。

    4. 在“证书”页面中,单击“下载”。

    5. 保存已下载文件 (*.developer_identity.cer)。

    生成 iOS 分发证书

    1. 使用 Apple ID 登录 iOS 配置门户,然后选择“分发”选项卡

    2. 单击“请求证书”,然后浏览至您在计算机上生成并保存(第 3 步)的 CSR 文件。

    3. 选中 CSR 文件并单击“提交”。

    4. 在“证书”页面中,单击“下载”。

    5. 保存已下载文件 (*.distribution_identity.cer)。

  5. 将 iOS 开发者证书或 iOS 分发证书转换为 P12 文件格式 (*.p12)。

    将 iOS 开发者证书或 iOS 分发证书转换为 P12 格式以便 Flash Builder 可以为 iOS 应用程序进行数字签名。转换为 P12 格式将使 iOS 开发者/分发证书与关联的私钥组合在一个文件中。

    注: 如果您使用 AIR Debug Launcher (ADL) 测试桌面上的应用程序,则无需将 iOS 开发者/分发证书转换为 P12 格式。

    使用 Mac 上的 Keychain Access 或 Windows 上的 OpenSSL 生成个人信息交换 (*.p12) 文件。有关更多信息,请参阅将开发人员证书转换为 P12 文件。

  6. 通过执行下列操作生成应用程序 ID:

    1. 使用 Apple ID 登录 iOS 配置门户。

    2. 转至“应用程序 ID”页面,然后单击“新建应用程序 ID”。

    3. 在“管理”选项卡中,输入应用程序的说明,生成新的捆绑种子 ID,然后输入捆绑标识符。

      每个应用程序都有一个唯一的应用程序 ID,您可以在应用程序描述符 XML 文件中指定该 ID。应用程序 ID 包含一个 Apple 提供的 10 字符“捆绑种子 ID”和一个您指定的“捆绑标识符”后缀。您指定的“捆绑标识符”必须与应用程序描述符文件中的应用程序 ID 匹配。例如,如果应用程序 ID 是 com.myDomain.*,则应用程序描述符文件中的 ID 必须以 com.myDomain 开始。

      重要说明: 通配符捆绑标识符有助于开发和测试 iOS 应用程序,但不能用于将应用程序部署到 Apple App Store。
  7. 生成开发者配置概要文件或分发配置概要文件 (*.mobileprovision)。

    注: 要将应用程序部署到设备中,需要开发者配置概要文件。要将应用程序部署到 Apple App Store 中,需要分发配置概要文件。使用分发配置概要文件为应用程序签名。

    生成开发者配置概要文件

    1. 使用 Apple ID 登录 iOS 配置门户。

    2. 转至“证书”>“配置”,然后单击“新建概要文件”。

    3. 输入概要文件名称,选择 iOS 开发者证书、应用程序 ID 以及要在其中安装应用程序的 UDID。

    4. 单击“提交”。

    5. 下载生成的开发者配置概要文件 (*.mobileprovision) 并将其保存在计算机上。

    生成分发配置概要文件

    1. 使用 Apple ID 登录 iOS 配置门户。

    2. 转至“证书”>“配置”,然后单击“新建概要文件”。

    3. 输入概要文件名称,选择 iOS 分发证书和应用程序 ID。如果您要在部署之前测试应用程序,请指定要在其中执行测试的设备的 UDID。

    4. 单击“提交”。

    5. 下载生成的配置概要文件 (*.mobileprovision) 并将其保存在计算机上。

在测试、调试或安装 iOS 应用程序时选择的文件

要运行、调试或安装在 iOS 设备上测试的应用程序,请在“运行/调试配置”对话框中选择以下文件:

  • P12 格式的 iOS 开发者证书(第 5 步)

  • 包含应用程序 ID 的应用程序描述符 XML 文件(第 6 步)

  • 开发者配置概要文件(第 7 步)

有关更多信息,请参阅在 Apple iOS 设备上调试应用程序和在 Apple iOS 设备上安装应用程序。

将应用程序部署到 Apple App Store 时选择的文件

要将应用程序部署到 Apple App Store 中,请在“导出发行版”对话框中选择“包类型”作为 Apple App Store 的最终发行包,然后选择以下文件:

  • P12 格式的 iOS 分发证书(第 5 步)

  • 包含应用程序 ID 的应用程序描述符 XML 文件(第 6 步)

    注: 您不能在将应用程序提交到 Apple App Store 时使用通配符应用程序 ID。

  • 分发配置概要文件(第 7 步)

转载于:https://www.cnblogs.com/imlucky/p/3533096.html

IOS 开发环境,证书和授权文件等详解相关推荐

  1. iOS 开发者证书、描述文件等详解

    https://www.cnblogs.com/lrr0618/p/5388350.html

  2. 第二部分_搭建Java Web开发环境与配置Tomcat服务器JSP详解

    MyEclipse集成Tomcat 首先配置Tomcat,即配置环境变量Java_HOME.path,在第一讲中已经完成了,不再赘述. Eclipse代码风格导入MyEclipse: 每个项目都要配置 ...

  3. iOS开发之系统发短信功能详解

    iOS调用系统的发短信功能可以分为两种:1,程序外调用系统发短信.2,程序内调用系统发短信.第二种的好处是用户发短信之后还可以回到app.这对app来说非常重要. 程序外调用系统发短信 这个方法其实很 ...

  4. pycharm+PyQt5+python最新开发环境配置,踩坑过程详解

    安装工具: Pycharm 专业版2017.3 PyQT5 python3 pyqt5-tools 设置扩展工具的参数找到setting->tools->external tools,点击 ...

  5. 【IOS 开发】Objective - C 入门 之 数据类型详解

    作者 : 韩曙亮 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/38544659 1. 数据类型简介及输出 (1) 数据类型简介 ...

  6. IOS开发--深拷贝与浅拷贝(mutableCopy与Copy)详解

    这里主要侧重于集合类的深浅拷贝,主要事因为工作的时候遇到这个问题. 有不足的地方欢迎指正,转载请注明. 首先我们需要有这样的一个前提:   [array addObject:obj]; 这样obj的引 ...

  7. Linux环境下查看日志文件命令详解

    目录: 前言 cat命令 more命令 less命令 head命令 tail命令 tac命令 echo命令 grep命令 sed命令 混合命令 附加 前言: 当日志存储文件很大时,我们就不能用 vi ...

  8. 【IOS 开发】Object - C 入门 之 数据类型详解

    转载来自: http://blog.csdn.net/shulianghan/article/details/38544659 1. 数据类型简介及输出 (1) 数据类型简介 数据类型简介 : Obj ...

  9. iOS开发UI篇 -- UISearchBar 属性、方法详解及应用(自定义搜索框样式)

    很多APP都会涉及到搜索框,苹果也为我们提供了默认的搜索框UISearchBar.但实际项目中我们通常需要更改系统默认搜索框的样式.为了实现这一目标,我们需要先搞懂 UISearchBar 的属性及方 ...

最新文章

  1. Dialog、Toast、Snackbar,你真的了解它们吗?
  2. 十五天精通WCF——第七天 Close和Abort到底该怎么用才对得起观众
  3. Android RecyclerView 使用完全解析 体验艺术般的控件
  4. C++描述杭电OJ 2014. 青年歌手大奖赛_评委会打分 ||
  5. webpack 报错 path is not defind
  6. 什么是数据库并发控制?数据库并发控制的主要方法是?
  7. 编码:隐匿在计算机软硬件背后的语言(3)--二进制加法器
  8. 王招治计算机财务管理,计算机财务管理——以Excel为分析工具
  9. 服务器连接电脑显示屏花屏怎么解决,电脑显示器花屏怎么办 电脑显示器花屏解决方法【详解】...
  10. 维纳滤波器、卡尔曼系列滤波器以及自适应LMS、RLS滤波器matlab代码实现
  11. 前端布局layout总结,左右布局,上中下布局
  12. 模拟登陆广工统一认证系统
  13. 锚具ovm是什么意思_OVM锚具(柳州欧维姆)
  14. 总线收发器是干什么的_总线耦合器到底是做什么用的
  15. [边缘检测算法] Sobel算子及其PC端优化提速20几倍
  16. 西安交通大学城市学院计算机二级,2019西安交通大学城市学院专业排名
  17. Python 面向对象
  18. 《信息安全保障》一1.3 信息系统安全保障概念与模型
  19. vue面试核心,双向数据绑定,数据代理,数据劫持,发布订阅,数据编译,看这个demo就够了
  20. Fully Convolutional Networks for Semantic Segmentation全文翻译和阅读

热门文章

  1. 【Alljoyn】Alljoyn学习笔记五 AllJoyn开源技术基础概念解析
  2. [Qt教程] 第19篇 2D绘图(九)图形视图框架(上)
  3. cmd上写的java简单代码_用cmd编辑一个超级简单的小游戏,求代码
  4. gsp计算机管理系的功能,药博士医药企业GSP管理系统功能介绍
  5. pycharm里怎么关闭一个项目_【周末分享】一个完整的项目复盘到底要怎么做?...
  6. TCP/IP学习笔记(二)TCP三次握手
  7. 计算机辅助药物设计局限,计算机辅助药物设计高效低耗
  8. 关于java自动生成一个tostring-json,解决hibernate框架,每次全属性输出,的数据动态且限制对象的属性书写到前端,使用模板!
  9. MAX232和PL2303、CH340的区别
  10. 查询GPU是否支持CUDA