【转】IOS 开发环境,证书和授权文件等详解
(转自: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 开发者计划。 |
无 |
|
|
2. |
注册 iOS 设备的唯一设备标识符 (UDID)。 |
Apple 开发者 ID(第 1 步) |
|
|
3. |
生成证书签名请求 (CSR) 文件 (*.certSigningRequest)。 |
|
无 |
|
4. |
生成 iOS 开发者/分发证书 (*.cer)。 |
|
|
|
5. |
将 iOS 开发者/分发证书转换为 P12 格式。 (发布后APPSTORE用这个来识别你是哪个公司或个人, 包含开发和发行两种版本) |
|
|
|
6. |
生成应用程序 ID。(标示两个不同的应用) |
Apple 开发者 ID(第 1 步) |
|
|
7. |
生成配置概要文件 (*.mobileprovision)包含一组数据 信息,它能够将开发人员和设备与经过认可的 iOS 开 发团队绑定在一起,并且能够启用用于测试的设备它 包含一组 iOS 开发证书、若干设备 ID和一个应用程序 ID,并且它必须安装于你希望运行你的应用程序的每 个设备上另一方面,发行配置文件可能包含设备数据 信息,它依据你是否希望为特定设备的特别发行或通 过 Apple App Store 创建应用程序包。Apple 只接受采 用 App Store 发行配置文件创建的应用程序,但采用 App Store 配置文件创建的 |
|
|
|
8. |
构建应用程序。 |
Flash Builder |
|
|
9. |
部署应用程序。 |
iTunes |
|
构建、调试或部署 iOS 应用程序前的准备工作
在使用 Flash Builder 构建 iOS 应用程序并将该应用程序部署在 iOS 设备上或提交到 Apple App Store 之前,请执行以下步骤:
加入 Apple iOS 开发者计划。
您可以使用现有的 Apple ID 登录或创建一个 Apple ID。Apple 开发者注册向导将指导您完成必要的步骤。
注册设备的唯一设备标识符 (UDID)。
仅在您将应用程序部署到 iOS 设备而不是 Apple App Store 中时,该步骤才适用。如果您要在多个 iOS 设备上部署应用程序,请注册每个设备的 UDID。
获得 iOS 设备的 UDID
将 iOS 设备连接到开发计算机并启动 iTunes。连接的 iOS 设备将显示在 iTunes 中的“设备”部分下。
单击设备名称显示 iOS 设备的摘要。
- 在“摘要”选项卡中,单击“序列号”可显示 iOS 设备的包含 40 个字符的 UDID。
您可以使用键盘快捷键 Ctrl+C (Windows) 或 Cmd+C (Mac) 从 iTunes 复制该 UDID。
注册设备的 UDID
使用 Apple ID 登录 iOS 配置门户并注册该设备的 UDID。
生成证书签名请求 (CSR) 文件 (*.certSigningRequest)。
将生成 CSR 以获得 iOS 开发者/分发证书。可以通过使用 Mac 上的 Keychain Access 或 Windows 上的 OpenSSL 生成 CSR。生成 CSR 时,只需提供用户名和电子邮件地址;无需提供有关应用程序或设备的任何信息。
生成 CSR 会创建公钥、私钥以及 *.certSigningRequest 文件。公钥包含在 CSR 中,私钥用于为请求签名。
有关生成 CSR 的更多信息,请参阅生成证书签名请求。
根据需要生成 iOS 开发者证书或 iOS 分发证书 (*.cer)。
注: 要将应用程序部署到设备中,需要开发者证书。要将应用程序部署到 Apple App Store 中,需要分发证书。生成 iOS 开发者证书
使用 Apple ID 登录 iOS 配置门户,然后选择“开发”选项卡。
单击“请求证书”,然后浏览至您在计算机上生成并保存(第 3 步)的 CSR 文件。
选中 CSR 文件并单击“提交”。
在“证书”页面中,单击“下载”。
保存已下载文件 (*.developer_identity.cer)。
生成 iOS 分发证书
使用 Apple ID 登录 iOS 配置门户,然后选择“分发”选项卡
单击“请求证书”,然后浏览至您在计算机上生成并保存(第 3 步)的 CSR 文件。
选中 CSR 文件并单击“提交”。
在“证书”页面中,单击“下载”。
保存已下载文件 (*.distribution_identity.cer)。
将 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 文件。
通过执行下列操作生成应用程序 ID:
使用 Apple ID 登录 iOS 配置门户。
转至“应用程序 ID”页面,然后单击“新建应用程序 ID”。
在“管理”选项卡中,输入应用程序的说明,生成新的捆绑种子 ID,然后输入捆绑标识符。
每个应用程序都有一个唯一的应用程序 ID,您可以在应用程序描述符 XML 文件中指定该 ID。应用程序 ID 包含一个 Apple 提供的 10 字符“捆绑种子 ID”和一个您指定的“捆绑标识符”后缀。您指定的“捆绑标识符”必须与应用程序描述符文件中的应用程序 ID 匹配。例如,如果应用程序 ID 是 com.myDomain.*,则应用程序描述符文件中的 ID 必须以 com.myDomain 开始。
重要说明: 通配符捆绑标识符有助于开发和测试 iOS 应用程序,但不能用于将应用程序部署到 Apple App Store。
生成开发者配置概要文件或分发配置概要文件 (*.mobileprovision)。
注: 要将应用程序部署到设备中,需要开发者配置概要文件。要将应用程序部署到 Apple App Store 中,需要分发配置概要文件。使用分发配置概要文件为应用程序签名。生成开发者配置概要文件
使用 Apple ID 登录 iOS 配置门户。
转至“证书”>“配置”,然后单击“新建概要文件”。
输入概要文件名称,选择 iOS 开发者证书、应用程序 ID 以及要在其中安装应用程序的 UDID。
单击“提交”。
下载生成的开发者配置概要文件 (*.mobileprovision) 并将其保存在计算机上。
生成分发配置概要文件
使用 Apple ID 登录 iOS 配置门户。
转至“证书”>“配置”,然后单击“新建概要文件”。
输入概要文件名称,选择 iOS 分发证书和应用程序 ID。如果您要在部署之前测试应用程序,请指定要在其中执行测试的设备的 UDID。
单击“提交”。
下载生成的配置概要文件 (*.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 步)
【转】IOS 开发环境,证书和授权文件等详解的更多相关文章
- IOS 开发环境,证书和授权文件等详解
(转自:http://blog.csdn.net/gtncwy/article/details/8617788) 一.成员介绍1. Certification(证书)证书是对电脑开发资格的认证, ...
- iOS开发——高级特性&Runtime运行时特性详解
Runtime运行时特性详解 本文详细整理了 Cocoa 的 Runtime 系统的知识,它使得 Objective-C 如虎添翼,具备了灵活的动态特性,使这门古老的语言焕发生机.主要内容如下: 引言 ...
- IOS开发UI篇之tableView 的用法详解
1.我们知道tableView是IOS中的高级视图,其继承与ScrollView,故我们知道他有具有ScrollView的所有功能.而且还扩展了许多.当然在这里就不一一介绍了. 2.tableView ...
- ios开发之--armv7,armv7s,arm64,i386,x86_64详解
有时候在运行的时候,经常出现诸如i386的错误,最新一些可能会出现 No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch ...
- pycharm+PyQt5+python最新开发环境配置,踩坑过程详解
安装工具:Pycharm 专业版2017.3PyQT5python3 pyqt5-tools 设置扩展工具的参数找到setting->tools->external tools,点击加号新 ...
- Python开发环境Wing IDE设置Python路径详解
在使用Wing IDE的时候,Python源代码取决于PYTHONPATH(无论是外部或通过内部改变sys.path系统设置),用户需要将路径设置到Wing IDE中. 这个值可以从项目菜单和工具栏的 ...
- 【IOS 开发】Object - C 入门 之 数据类型详解
1. 数据类型简介及输出() http://www.把下面的替换我.com/html/topnews201408/79/1279.htm csdn123
- iOS开发UI篇 -- UISearchBar 属性、方法详解及应用(自定义搜索框样式)
很多APP都会涉及到搜索框,苹果也为我们提供了默认的搜索框UISearchBar.但实际项目中我们通常需要更改系统默认搜索框的样式.为了实现这一目标,我们需要先搞懂 UISearchBar 的属性及方 ...
- iOS开发-- 开发环境,证书和授权文件
一.成员介绍 1. Certification(证书)证书是对电脑开发资格的认证,每个开发者帐号有一套,分为两种:1) Developer Certification(开发证书)安装在电脑 ...
随机推荐
- [RM HA 1] Cloudera CDH5 RM HA功能验证
简介: 最新的Cloudera CDH5.0.0 beta版本已经支持RM的HA, 笔者为此简单验证了RM HA的功能. 后续将继续分析其HA的原理,以及其与社区RM HA的区别. 集群部属与RM f ...
- lintcode:完美平方
题目 给一个正整数 n, 找到若干个完全平方数(比如1, 4, 9, ... )使得他们的和等于 n.你需要让平方数的个数最少. 样例 给出 n = 12, 返回 3 因为 12 = 4 + 4 + ...
- iOS开发--CornerStone上传静态库(.a文件)
首先打开软件左上角 CornerStone-Preferences-SubVersion 第一个地方把对号去掉,第二个地方把.a那个删除,然后save. 然后把你的.a文件放到本地的相应文件夹下, 但 ...
- 初始化glew,创建OpenGL渲染上下文
void RegisterWinDowClass(HINSTANCE hInstance,std::string className,WNDPROC proc) { WNDCLASS wndClass ...
- 实用Linux命令,不求最全但求实用-------iptables命令实战
开始配置 我们来配置一个filter表的防火墙. (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCE ...
- Android 广播机制(两种注册方法)与中断广播
两种注册类型的区别是: 1)第一种不是常驻型广播,也就是说广播跟随activity的生命周期.注意: 在activity结束前,移除广播接收器. 2)第二种是常驻型,也就是说当应用程序关闭后,如果有信 ...
- Matlab绘图高级部分
图形是呈现数据的一种直观方式,在用Matlab进行数据处理和计算后,我们一般都会以图形的形式将结果呈现出来.尤其在论文的撰写中,优雅的图形无疑会为文章加分.本篇文章非完全原创,我的工作就是把见到的Ma ...
- poj: 3253
这题一开始从大往小考虑是行不通的,这个时候从小到大考虑就很容易了.用一个priority_queue选出两个最小的值加到结果里再推回queue里,直到queue空为止.注意这里res要用long lo ...
- 存根类STUB
当我们创建一个指定各种方法集合的接口时,我们可以考虑使用"存根”STUB,“存根”就是用空方法体实现该接口中所有方法的类,这样我们就可以通过继承该“存根”创建一个实现该接口的类,这样一来,该 ...
- 用Spring Data JPA 基于内存存储pojo的简单案例
poject结构如下: Customer.java类是一个pojo类,代码如下: package hello; import javax.persistence.Entity; import java ...