苹果证书管理之一:开发证书(调试证书)

1、开发证书简介

在iOS9以及Xcode7之前,假如需要使用真机进行调试,是必须要有开发证书(调试证书)的,iOS9/Xcode7发布后,苹果修改了真机调试的策略,只要拥有appleID即可进行真机调试。但是在进行团队开发过程中,还是通常使用公司的开发者证书来进行真机调试的。

苹果对于证书的管理非常严格,不像Android可以随意调试,必须要进行繁杂的证书配置。但是对于一般工程师来说,基本不需要深入掌握苹果证书管理的原理,主要掌握本文介绍的使用方法即可。

对苹果设备进行真机调试时,需要提前准备好两个文件:P12文件以及Provisioning文件,接下来分别介绍下如何生成P12文件和Provisioning文件。

2、P12生成

  •  在MAC电脑上,选择LaunchPad -> 钥匙串访问;
  • 打开菜单中的如下选项,钥匙串访问 -> 证书助理 -> 从证书颁发机构申请证书,如下图所示

苹果证书管理之一:开发证书(调试证书)_第1张图片

  • 随意填写必填的内容,选择“存储到磁盘”,得到CertificateSigningRequest.certSigningRequest文件。
  • 打开develop.apple.com,输入开发者用户名/密码,需要提前注册开发者账号(99美金/199美金);
  • 登录成功后,选择Certificates,Identifiers & Profiles,如下图所示

苹果证书管理之一:开发证书(调试证书)_第2张图片

  • 选择Certificates,如下图所示

  • 点击右上角的加号按钮,新增一个开发者证书。(默认情况下,苹果允许同时存在两份开发证书,但一般情况下只要一个即可)
  • 在新增开发者证书过程中,需要导入之前创建的certSigningRequest文件,创建成功后,如下图所示,可以下载到本地,得到一个ios_development.cer文件。

  • 双击该cer文件,在钥匙串助理中,可以看到新增的这个证书,如下图所示:

  • 右键选择上面的证书文件(注意选择上面那个,不要选下面那个),选择“导出…..”,随便输入一个密码,即可得到P12文件。

3、Provisioning文件生成

Provisioning是绑定了开发者证书、设备ID以及App ID的文件,生成Provisioning文件的步骤如下。

  • 链接iPhone/iPad等到电脑,打开Xcode
  • 在Xcode中,选择window -> Devices,选中设备,拷贝Identifier字符串,如下图所示:

  • 登录develop.apple.com,输入开发者账号密码登陆;
  • 选中Identifiers -> App IDs,点击右上角加号,新增App ID
  • 根据实际需要填写App ID(Explicit App ID),对应特定App的bundle ID,也可以选择Wildcard App ID,所有App均可使用;

苹果证书管理之一:开发证书(调试证书)_第3张图片

 

  • 选择Devices,点击右上角加号,添加设备,在添加过程中,需要输入之前在Xcode中获取的设备Identifier;

苹果证书管理之一:开发证书(调试证书)_第4张图片

  • 选择Provisioning Profiles,点击右上角加号,新增Provisioning文件;
  • 选择iOS APP Development

 

  • 选择该Provisioning文件可以调试的App ID

 

 

  • 选择对应的证书,一般情况下只有一个;

苹果证书管理之一:开发证书(调试证书)_第5张图片

 

  • 选择该Provisioning文件可以使用的设备

苹果证书管理之一:开发证书(调试证书)_第6张图片

 

  • 生成Provisioning后,下载到本地,得到mobileprovision文件。

4、开发证书使用

经过上面两步的操作,可以得到两个文件,一个P12文件,一个mobileprovision文件。

  • 双击P12文件,输入密码后,即可导入P12文件,导入后,可以在钥匙串助理中看到导入的证书;
  • 链接手机到MAC电脑,打开Xcode,双击mobileprovision文件,导入Provisioning文件;
  • 在Xcode的工程文件中,选择Project以及Target中的工程Build Setting选项,搜索Code Signing,依次修改Code Signing Identity以及Provisioning Profile,如下图所示:

苹果证书管理之一:开发证书(调试证书)_第7张图片

你可能感兴趣的:(ios,调试)