iOS证书配置及详解

Certificates, Identifiers &Profiles 简介

Certificates

  • Certificates 即 ”证书“,约等于通行证,申请证书是我们进行真机调试与发布的第一步。证书有两种:

    1、 开发证书 ( Development Certificates ),主要是授权mac设备的开发权限

    2、 发布证书 (Distribution Certificates ),主要是授权mac设置发布权限

Identifiers

  • Identifiers 即”标识符“,约等于是身份证,用于创建以下三个:

    App IDs 

    Pass Type IDs

    Website Push IDs

其中,App ID是应用的唯一标示符,每一个应用的app id是不一样的


Devices

  •  Devices 用于创建测试设备,一个99美元允许创建100个设备


Provisioning Profiles

  • Provisioning Profiles 即“描述文件”。它的功能很特别,专门用于将 Certificates、Identifiers、Devices结合起来,形成一个描述证书、标示符的描述文件Provisioning Profiles 放入我们的xcode中,让 xcode知道我们的证书和哪些设备之类的信息相匹配。


一、下面来介绍如何申请证书:

1)申请本地证书

申请证书必须在我们的电脑上先申请一个证书,找到  

                                

点击"其他",找到“钥匙串”:

                              

选择从颁发机构申请证书,注意下面的红色框,必须选择那一个才可以:

                            

点击后看到:

                                       

如果选择 “存储到磁盘”,那么“用户邮件地址” 随便填一个就好,点击“继续”:

                                       

“存储为:”可以给证书命名,选择一个位置,点击“存储”:

                                       

这样在桌面就生成了一个本地证书。

这一个本地证书可以同时用来生成“开发证书”和“发布证书”。


下面只介绍“开发证书“的申请,申请”发布证书“步骤相同,就是换一个选项 

2): 在开发者账号里申请证书              

我们进入99美元开发账号看到:

                         

点击 Certificates, Identifiers & Profiles,进入页面看到:

                                                                                                          


                                                         











点击 + 进入证书创建页面





            
















此处我们选择“Development”下的“iOS App Development”,进行真机调试电脑授权申请。然后界面往下拉,点击界面最下方的“Continue”进入以下页面:

 

选择“Choose File” 将刚刚申请的保存在本地的证书上传:

                                                         

                                                         

上传好后,点击“Generate” 就可以生成证书了。






















选择“Download”。

这时,我们在本地生成的证书就没用了,可以删除。


我们返回到证书的界面可以看到我们申请的证书:

一般申请一个 发布证书(IOS Distribution),一个开发证书(IOS Development)就够用了。


找到下载的文件,双击它,添加到钥匙串里就好了。在这一步里,如果钥匙串拒绝添加,直接将其拖进钥匙串就行:

这样证书就申请完毕了,有了证书后,接下来可以申请各种各样的描述文件供开发使

注:以上证书是授权当前电脑具有开发或者发布的能力。

二、添加App IDs

选择 “Identifiers”的 “App IDs”,点击“+”


出现以下界面:

  • App ID Description 是一个App ID的描述,就是一个名字,这个名字可以随便取(我习惯于取我的项目名

  • App ID Prefix 苹果已经帮我们填了,不需要我们填,可以看出,它是一个团队的ID


下一步,选择        App ID Suffix

App ID Suffix 有两个选项:


  • Explicit App ID :顾名思义,这里要填一个明确的 App ID,

    什么意思呢?可以这么来解释:我们做项目时的Bundle Identifier (Bundle ID)是用来标示我们的app的。我们的App ID也是用来标示我们的app的。这两个有什么联系呢?Explicit App ID 就是要我们确定一个唯一的 Bundle ID,用来标示我们的 app,使它有一个固定的身份。可以发现,当提交应用到苹果时,如果我们一开始没写 Explicit App ID,苹果会自动帮我们生成一个与我们发布时填的一样的 Bundle ID 到我们的 App ID中。

       填写  Explicit App ID 的格式为:com.company.appName(:和自己项目中的Bundle Identifier对应


  • Wildcard App ID:顾名思义,这里要填一个通配符的 App ID 。意思就是,我们只需要填一个在所有应用都能试用的 App ID 就好了。

      填写  Wildcard App ID 的格式为:com.company.* 


申请真机调试的时候,不是为了某一个应用去调试,而是为了所有的应用去调试,必须能适应每一个app,所以我们选择 Wildcard App ID。

com.company.* 的company 一般写公司的名字,也可以按需要写


可以发现,选择 Explicit App ID 会比 Wildcard App ID 多几个服务选项可以选,不过我们是真机调试,所以无所谓,将能选的勾上,选择“Continue”就好。



看到如下界面,点击“Submit”后就可以生成App ID了


三、设备

如图,点击“+”,一个99美元账号只能申请100个设备。


Name 自己取一个设备的名字,UDID约等于设备的身份证,可以在xcode中查看

查看UDID

打开xcode,选择“Windows” 的“organizer”:

选择设备看到 “identifier”,这个就是我们设备的 UDID,将其复制,可以填入上上图显示的 UDID中。

当你的机子第一次用于开发时,可以看到,显示的灯是“灰色”的,可以点击“use for developer” 来作为开发机。点击了“use for developer”后,可以发现你的灯变成了黄色的了。

填好 name 和 UDID后,点击continue 就可以看到如下界面,点击“Register”就可以在苹果上登记了。


四、申请描述文件:

如图点击   “+”


选择    “iOS App Developer”,然后“Continue”


这里选择我们刚刚生成的 App ID,选好后,点击“Continue”


这里选择一个开发证书,有两点要注意:

  • 这个证书是我们刚刚自己在本机(当前电脑)与苹果开发者网站生成的 开发证书 “Development certificate”

  • 如果不是刚生成的,这个证书必须在本地的mac的钥匙串中存在(带密钥的证书,不带密钥的依然无效)

如果不想自己在重新生成证书,用别人生成的证书,可以从别人的电脑中导出p12文件

选好证书以后,点击“Continue”


选择设备,设备可以选择全部设备,也可以按需选择你需要的设备:

这里给我们的描述文件取一个名字,这个名字在以后的xcode中是看得到的,所以可以取一个好辨认的名字。取好名字后,选择“Generate”生成描述文件。(本人习惯将此名字取为:项目名_dev或项目名_pre,在此我随便取一个


生成好描述文件后,选择“Download”,双击进行安装(安装后在xcode中可以查看)

截止到目前为止证书和配置文件已经配置好了,接下来再总结一下,证书是用本地mac的钥匙串生成的证书配置而成,配置文件是由证书+identifiers+devices生成的。


在真机调试时,不要忘记设置这两个,否则调试失败:

这个必须填:之前写Wildcard App ID 的内容. app的名字

设置好这两个之后再点击运行。


注:本片文章属于自己看网上多处教程总结下来的,如有错误,望多多指出。


猜你喜欢

转载自blog.csdn.net/chermon_love15/article/details/50600786