iOS 证书申请和使用详解

对于iOS开发者来说,apple开发者账号肯定不会陌生。在开发中我们离不开它。下面我简单的为大家分享一下关于iOS开发中所用的证书相关知识。

第一部分:成员介绍

1.Certification(证书)

证书是对电脑开发资格的认证,每个开发者帐号有一套,分为两种

1)Developer Certification(开发证书)

安装在电脑上提供权限:开发人员通过设备进行真机测试。
可以生成副本供多台电脑安装;

2)Distribution Certification(发布证书)

安装在电脑上提供发布iOS程序的权限:开发人员可以制做测试版和发布版的程序。不可生成副本,仅有配置该证书的电脑才可使用;

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安装到其他电脑上,其他电脑也不可能具有证书的权限。

第二部分:证书申请流程

step1:登录(99美元账号)https://developer.apple.com

c_1.jpg

1)登录成功后在页面右侧选择“Certificates”:

c_2.png

2)打开之后可以看到面板:

c_3.png

step2:生成CSR文件

1)打开 ->钥匙串访问

c_5.png

2)打开右上方钥匙串访问栏->证书助理->从证书颁发机构请求证书…

c_4.png

3)填写一个邮箱地址,选择“存储到磁盘”,点击继续,完成了。

c_6.png

申请成功后的文件:

c_7.png

step3:注册 App ID 流程

1)点c_3图面板中的App IDs 右上角的加号。然后填写App ID的名字:

c_8.png

2)填写bundle ID:

c_9.png

3)选择App需要支持的服务,(如:app耍要推送服务,就勾选Push Notifications)

c_10.png

4)最后会有一个详细的内容列表,对应无误后,提交完成。

step4: 证书申请

1)选择证书的类型,下面罗列我们iOS开发常用的证书类型

c_11.png

2)如果是申请推送证书,则会关联一个App ID

c_12.png

3)上传我们之前建好的CSR文件(详见step2)

c_13.png

4)恭喜你,到此为止,你完成了证书的申请,简单吧。

setp5:授权文件申请(Provisioning Profile)

1)选择授权文件类型,下面罗列了iOS常的授权文件类型

c_14.png

2)选择关联App ID

c_15.png

3)选择关联的证书

c_16.png

4)选择授权的设备(通过 UDID),除了企业证书(inHouse)外,只有你添加的设备才能进行调度或测试

c_17.png

5)给授权文件命一个能和其它授权文件区分的名字

c_18.png

恭喜你,到此为止,授权文件申请完成了,简单吧。
在我们iOS开发中,常用的证书相关操作流程就全在上面了。

第三部分:总结

1)成功安装测试证书的条件:a).开发者证书+私钥。 b).授权文件。

2)如果你想通过证书进行真机调试,请选择开发版证书(Development Certificate),和相应的授权文件(Development Provisioning Profile) 。

3)如果你想让更多的开发者能进行真机调试,请先对需要真机调试的设备进行授权,然后将开发版证书(Development Certificate)下载到本机安装后导出为带私的.p12的文件,和相应的授权文件(Development Provisioning Profile)交由开发者安装,成功后即可进行真机调试。

4)如果你想让更多的机子进行真机测试,请先对需要测试的设备进行授权,然后选择生产版证书(Distribution Ad_hoc Certificate)和相应的授权文件(Distribution Ad_hoc Provisioning Profile)打包后分发给要测试的设备即可。

以上是我在iOS开发中对iOS证书使用的记录,希望对你有所帮助。最后,谢谢浏览。

iOS 证书申请和使用详解相关推荐

  1. iOS 证书与签名 解惑详解

    iOS 证书与签名 解惑详解 分类: iPhone2012-06-06 19:57 9426人阅读 评论(1) 收藏 举报 iosxcodecryptographyappleiphone测试 目录(? ...

  2. IOS证书申请和打包流程

    IOS证书申请和打包流程 参考资料: iOS 证书申请和使用详解 iOS完整的证书申请和打包过程 iOS开发证书与配置文件的使用 iOS 证书详解 iOS导出4个ipa包的含义 苹果开发者账号中,测试 ...

  3. iOS开发之Accounts框架详解

    2019独角兽企业重金招聘Python工程师标准>>> iOS开发之Accounts框架详解 Accounts框架是iOS原生提供的一套账户管理框架,其支持Facebook,新浪微博 ...

  4. ios 企业签名需要源文件么_苹果企业签名之iOS证书申请和签名文件生成

    对于苹果企业签名,大家一直属于半知半解,或者略知皮毛.今天就从最基础的iOS证书申请和签名文件生成这两个点来给大家说说企业签名到底是什么东西,一起来看看吧! iOS开发需要加入开发计划并给苹果付费,这 ...

  5. uni-app打包后ios证书申请和ios应用市场发布(windows主机发布)

    uni-app打包后ios证书申请和ios应用市场发布 1,登录苹果开发者中心:https://developer.apple.com 审请注册 2.在windows上获取证书以及发布这里使用一个软件 ...

  6. iOS证书申请打包上传App Store审核完整流程(7个步骤)

    上架基本需求资料 1.苹果开发者账号 2.开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestFlight测试然后提交 ...

  7. iOS富文本字符串AttributedString详解

    原文链接: iOS富文本字符串AttributedString详解 简书主页:http://www.jianshu.com/users/37f2920f6848 Github主页:https://gi ...

  8. iOS中MVC等设计模式详解

    iOS中MVC等设计模式详解 在iOS编程,利用设计模式可以大大提高你的开发效率,虽然在编写代码之初你需要花费较大时间把各种业务逻辑封装起来.(事实证明这是值得的!) 模型-视图-控制器(MVC)设计 ...

  9. IOS开发学习笔记-----UILabel 详解

    IOS开发学习笔记-----UILabel 详解 01 //创建uilabel 02 UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMa ...

最新文章

  1. OpenCV中函数imread的参数flags的枚举值(可设置值)及其具体意义
  2. android里Conversion to Dalvik format failed with error 1错误的解决
  3. java Reference
  4. C++多线程简单入门(Windows版本)
  5. stm32f103zet6实现HTTP协议请求,UTF-8转码JSON打包上传
  6. Nginx+Tomcat负载均衡
  7. Python 把函数视作对象
  8. 过分了,这样阅读Datasheet(数据手册)合适吗?
  9. 《算法之道》精华 经典算法部分
  10. 前端学习(1432):模板引擎概述
  11. 阿里Java开发手册——如何优化数据库?
  12. Selenium+requests出现窗口不能跳转的情况
  13. jQuery size()函数
  14. 1.软件工程--软件建模与文档协作 --- 软件开发过程
  15. (转)Julia PkgServer 镜像服务
  16. VB_NET程序设计教程
  17. GreenPlum数据库介绍
  18. 上海科技大学信息科学与技术研讨会(SSIST day1) 笔记
  19. 第一章-问题求解策略-LA4234-Binary Clock
  20. 不同公司5%重仓持股统计(2011-2021年)

热门文章

  1. 《SpringBoot+vue全栈开发实战项目》笔记
  2. html过去手机唯一标识,H5能获取到手机设备ID或者手机浏览器唯一识别码吗
  3. C#代码精简优化技巧总结
  4. 2.8 电话聊天狂人(散列,c)
  5. 拿好你的iPhone8,因为你真的摔不起
  6. 用 Vite 创建Vue3项目和相关开发工具配置
  7. 什么是用户画像?金融行业大数据用户画像实践 [
  8. 破圈“买买买”,B站投资影视文娱难掩后顾之忧
  9. vscode 前端最佳插件配置
  10. 无人货架:围绕人的「无人」之战