---恢复内容开始---

一、iOS证书

iOS常用的证书包括开发证书发布证书,无论是真机调试还是最终发布应用到App Store这两个证书都是必须的,它是iOS开发的基本证书。Xcode7以后真机调试就不需要开发证书,真是开发者的福音啊!我再也不用为没有开发者账号而不能真机调试而担心了,(^o^)/~。

  • 开发证书
    开发证书又分为普通开发证书和推送证书,如果仅仅是一般的应用则前者即可满足,但是如果开发推送应用则必须使用推送证书。
  • 发布证书
    发布证书又可以分为普通发布证书、推送发布证书、Pass Type ID证书、站点发布证书、VoIP服务证书、苹果支付证书。同样的,对于需要使用特殊服务的应用则必须选择对应的证书。

二、一些概念的普及:

1. 应用标识AppID:

应用程序的唯一标识,对应iOS应用的Bundle Identifier,AppID在苹果开发者中心中分为:

  • 通配的应用ID:
    有通配符,例如liuting.eat.*,一般用于普通应用开发,一个通配ID可以适用于多个不同标识的应用
  • 明确的应用ID:
    没有通配符,例如liuting.push.com,对于使用消息推送、Passbook、站点发布、iCloud等服务的应用必须配置明确的应用ID
2. 设备标识UDID:

设备标识UDID用于标识每一台硬件设备的标示符。
注意它不是device tokendevice token是根据UDID使用一个只有Apple自己才知道的算法生成的一组标示符。

3. 授权证书:

授权证书,英文Provisioning Profiles,后缀为*.mobileprovision。将UDID、AppID、开发证书打包在一起的配置文件,同样分为开发发布两类配置文件。

4. 秘钥:
  • 在申请开发证书时必须要首先提交一个秘钥请求文件,对于生成秘钥请求文件的Mac,如果要做开发,则只需要下载开发证书和授权证书即可开发。
  • 如果要想在其他机器上做开发,则必须将证书中的秘钥导出(导出之后是一个*.p12文件),然后导入其他机器。
  • 对于类似于推送服务器端应用,如果要给APNs发送消息,同样需要使用秘钥文件,并且这个秘钥文件需要是推送证书导出的对应秘钥。

三、推送证书与秘钥申请全过程

1. 生成本机证书(*.certSigningRequest)

2. AppleID生成

最后选择Submit选项,在下一个界面中选择Done选项,这样我们设置AppID的步骤我们就完成了。

3. 生成Cer证书(*.cer)
进入苹果开发者网址的证书配置页面(上面生成AppleID已经讲过这个,这里不重复了),这里以开发证书为例,发布证书步骤差不多。

4. 生成授权证书(*.mobileprovision)
进入苹果开发者网址的证书配置页面

设备号生成:选择左侧的"Devices",然后点击右上角的加号,在随后出来的页面上添加你设备的UUID(在Xcode中可以查看到)以及name( 可以随便取,自己看的懂就行),然后Register一下,照着流程走到最后一步就完成了。

5. 导出秘钥(*.p12)

第5步不是必须的,一般这个秘钥需要上传到推送服务器那边,你如果只是真机调试的话,做到第4步即可
我之前搞推送的时候是把秘钥上传到极光推送JPush的服务器,搞了老久了,终于理清楚整个流程。
这一节是个准备阶段,因为我下一节要讲推送了,需要用到推送证书,否则无法调试,希望大家理解。

---恢复内容结束---

一、iOS证书

iOS常用的证书包括开发证书发布证书,无论是真机调试还是最终发布应用到App Store这两个证书都是必须的,它是iOS开发的基本证书。Xcode7以后真机调试就不需要开发证书,真是开发者的福音啊!我再也不用为没有开发者账号而不能真机调试而担心了,(^o^)/~。

  • 开发证书
    开发证书又分为普通开发证书和推送证书,如果仅仅是一般的应用则前者即可满足,但是如果开发推送应用则必须使用推送证书。
  • 发布证书
    发布证书又可以分为普通发布证书、推送发布证书、Pass Type ID证书、站点发布证书、VoIP服务证书、苹果支付证书。同样的,对于需要使用特殊服务的应用则必须选择对应的证书。

二、一些概念的普及:

1. 应用标识AppID:

应用程序的唯一标识,对应iOS应用的Bundle Identifier,AppID在苹果开发者中心中分为:

  • 通配的应用ID:
    有通配符,例如liuting.eat.*,一般用于普通应用开发,一个通配ID可以适用于多个不同标识的应用
  • 明确的应用ID:
    没有通配符,例如liuting.push.com,对于使用消息推送、Passbook、站点发布、iCloud等服务的应用必须配置明确的应用ID
2. 设备标识UDID:

设备标识UDID用于标识每一台硬件设备的标示符。
注意它不是device tokendevice token是根据UDID使用一个只有Apple自己才知道的算法生成的一组标示符。

3. 授权证书:

授权证书,英文Provisioning Profiles,后缀为*.mobileprovision。将UDID、AppID、开发证书打包在一起的配置文件,同样分为开发发布两类配置文件。

4. 秘钥:
  • 在申请开发证书时必须要首先提交一个秘钥请求文件,对于生成秘钥请求文件的Mac,如果要做开发,则只需要下载开发证书和授权证书即可开发。
  • 如果要想在其他机器上做开发,则必须将证书中的秘钥导出(导出之后是一个*.p12文件),然后导入其他机器。
  • 对于类似于推送服务器端应用,如果要给APNs发送消息,同样需要使用秘钥文件,并且这个秘钥文件需要是推送证书导出的对应秘钥。

三、推送证书与秘钥申请全过程

1. 生成本机证书(*.certSigningRequest)

2. AppleID生成

最后选择Submit选项,在下一个界面中选择Done选项,这样我们设置AppID的步骤我们就完成了。

3. 生成Cer证书(*.cer)
进入苹果开发者网址的证书配置页面(上面生成AppleID已经讲过这个,这里不重复了),这里以开发证书为例,发布证书步骤差不多。

4. 生成授权证书(*.mobileprovision)
进入苹果开发者网址的证书配置页面

设备号生成:选择左侧的"Devices",然后点击右上角的加号,在随后出来的页面上添加你设备的UUID(在Xcode中可以查看到)以及name( 可以随便取,自己看的懂就行),然后Register一下,照着流程走到最后一步就完成了。

5. 导出秘钥(*.p12)

第5步不是必须的,一般这个秘钥需要上传到推送服务器那边,你如果只是真机调试的话,做到第4步即可
我之前搞推送的时候是把秘钥上传到极光推送JPush的服务器,搞了老久了,终于理清楚整个流程。
这一节是个准备阶段,因为我下一节要讲推送了,需要用到推送证书,否则无法调试,希望大家理解。

最新文章

  1. springmvc No mapping found for HTTP request with URI in Dispatc
  2. EPROCESS 进程/线程优先级 句柄表 GDT LDT 页表 《寒江独钓》内核学习笔记(2)
  3. HDU 5001 Walk
  4. Android 数据存储相关
  5. nginx错误汇总
  6. 【原】Spark Standalone如何通过start-all.sh启动集群
  7. 每天一点Swift(五)控制器的生命周期和SizeClass
  8. 安装配置MongoDB数据库
  9. CSS定位与层叠
  10. Beyond Compare 3.3.8 build 16340 + Key
  11. 通过GIT_COMMIT进行代码回滚
  12. 第10章 使用密码保护API - Identity Server 4 中文文档(v1.0.0)
  13. windows :config windows update … 一直处于假死状态
  14. 如何在Mac上搭建自己的服务器——Nginx
  15. 【Nginx】Nginx简介及在CentOS7.0下安装教程
  16. 让simplejson支持datetime类型的序列化
  17. shell find
  18. 关于linux 内存碎片指数
  19. 聚类:层次聚类、基于划分的聚类(k-means)、基于密度的聚类、基于模型的聚类
  20. 机器学习理论基础学习12---MCMC

热门文章

  1. 国内的Jquery CDN免费服务
  2. 内存泄露--contentView缓存使用与ListView优化
  3. /etc/default/useradd
  4. shell中的-z
  5. Jenkins结合ant传递参数
  6. Clown without borders 2017/1/10
  7. POJ 1155 TELE (树形DP,树形背包)
  8. 关于父类中的this指针的问题
  9. python之路——递归函数
  10. caffe layer层cpp、cu调试经验和相互关系