iOS开发证书那点事儿

iOS开发是用Xcode做为开发工具,Xcode在安装以后就自带了模拟器(Simulator)。模拟器是个好工具,它对用户没有任何要求,可是咱们必须牢记一件事:开发出来的App最终是要在真机上执行,没有在真机上调试过,发布出去的App必定会出现各类意想不到的问题,并且没法解决。而要使用真机调试,开发证书就没法绕过去。app

一.开发帐号

苹果的开发帐号主要分为三种:工具

  • 我的开发帐号:$99;App能上App Store;只能我的使用。
  • 公司开发帐号:$99;App能上App Store;可多人协做开发。
  • 企业开发帐号:$299;App不能上App Store,仅能公司内部分发;可多人协做开发。
    我的和公司帐号除了容许的使用人数不同以外,没有其余不一样。接下来将以我的开发帐号为例阐明证书的建立及使用流程。

二. 建立证书及使用-以我的帐号的开发证书为例。

  1. 生成CSR文件
    CSR文件是经过Mac的钥匙串生成的,是建立开发证书必须的。方法:打开钥匙串,【钥匙串访问】->【证书助理】->【从证书颁发机构请求证书】,填入“电子邮件地址”和“经常使用名称”,选择“存储到磁盘”,点击继续。以后咱们会获得一个CSR文件:CertificateSigningRequest.certSigningRequest开发工具

    注意:在生成CSR文件的同时,会生成一对秘钥:公钥和私钥,私钥被保存到钥匙串中(可在钥匙串中查看),公钥被包含在CSR文件中用于建立证书。网站

  2. 建立证书调试

    使用开发者帐号登陆苹果开发者网站code

    • 建立AppID。开发

      AppID也就是App的BundleID,用于惟一标示你的App。可经过"Identifiers"栏目建立,例如com.example.myApp。这里要说一句,若是不使用推送功能,可建立形如com.example.*的AppID;但若是要使用推送功能,就必须使用具体的AppID。建立AppID的时候可同时勾选推送服务,而后建立推送证书。get

    • 添加Device。io

      将你iPhone的UUID添加到开发帐号中去,这样你的iPhone就能够用于调试。不在开发帐号中的设备没法参与调试。可经过"Devices"栏目添加。登录

    • 生成证书。

      在"Certificates"栏目下建立证书,选择"iOS App Development",以后按要求上传CSR文件便可生成开发证书。

    • 建立Provisioning Profile(即PP文件)。

      进入"Profiles"栏目,选择"iOS App Development",以后选择要加入到PP文件中的AppID,而后选择加入到PP文件中的证书,最后选择加入到PP文件中的设备。

      注意:PP文件能够当作是一个"数据包“,不一样类型的PP文件包含不一样的内容:

      Development PP = AppID + DevelopmentCertS(可包含多个) + Devices

      Distribution PP = AppID +DistributionCert

      AdHoc PP = AppID + DistributionCert + Devices

  3. 本地配置

    将上述建立的证书(如有推送证书也须要一块儿下载下来)和PP文件下载到本地。双击安装证书会将证书添加到钥匙串中,并自动与以前建立的私钥关联起来。双击PP文件会将其添加到Xcode中,在真机调试时,Xcode会根据PP文件去钥匙串中访问相应的证书和私钥,并验证链接的设备是否已经包含在PP文件的设备清单中。若是没问题,就能够愉快的进行真机调试了。

三.P12文件

若是有多台Mac的开发需求,天然会想到在每台Mac上都重复以上的步骤来建立证书和配置环境。可是Apple对一个开发帐号下建立的证书个数进行了限制,在建立多个证书以后就没法继续建立了。事实上,Mac开发过程当中最重要的是建立CSR文件时生成的私钥,可经过从钥匙串中将证书(包含私钥)导出为P12文件来解决多台Mac开发的问题。

  1. 打开钥匙串,找到对应的证书,展开证书项会发现其关联了私钥。右键导出为P12文件。未关联私钥的证书是没法导出P12文件的。
  2. 将该P12文件和PP文件分发到其余用于开发的Mac上面,而后安装便可。
相关文章
相关标签/搜索