开发了两年,有时候发现,之前虽然上架过几个app,但久了没去更新,苹果证书里面的一些细节还是会忘了,最近在简书看到一篇写的挺详细的,转来让更多人回忆一下,新人看不懂也可多看几遍,主要还是实际操作才知道。

首先得描述一下各个证书的定位,作用,这样在制作的时候心中有谱,对整个流程的把握也会准确一些;

1、开发者证书(分为开发和发布两种,类型为iOSDevelopment,ios Distribution),这个是最基础的,不论是真机调试,还是上传到appstore都是需要的,是一个基证书,用来证明自己开发者身份的;

2、appID,这是每一个应用的独立标识,在设置项中可以配置该应用的权限,比如是否用到了PassBook,GameCenter,以及更常见的push服务,如果选中了push服务,那么就可以创建生成下面第3条所提到的推送证书,所以,在所有和推送相关的配置中,首先要做的就是先开通支持推送服务的appID;

3、推送证书(分为开发和发布两种,类型分别为APNs Development ios,APNs Distribution ios),该证书在appID配置中创建生成,和开发者证书一样,安装到开发电脑上;

4、Provisioning Profiles,这个东西是很有苹果特色的一个东西,我一般称之为PP文件,该文件将appID,开发者证书,硬件Device绑定到一块儿,在开发者中心配置好后可以添加到Xcode上,也可以直接在Xcode上连接开发者中心生成,真机调试时需要在PP文件中添加真机的udid;是真机调试和必架必备之珍品;

平常我们的制作流程一般都是按以上序列进行,先利用开发者帐号登陆开发者中心,创建开发者证书,appID,在appID中开通推送服务,在开通推送服务的选项下面创建推送证书(服务器端的推送证书见下文),之后在PP文件中绑定所有的证书id,添加调试真机等;

具体操作流程如下:

第一步:申请“开发证书”

1、开发者证书的制作,首先登陆到开发者中心,找到证书配置的版块,猛戳进入,点进证书,会显示如下界面,点击右上角的加号

会出现以下界面,该操作重复两次,分别创建开发测试证书和发布证书,开发测试证书用于真机调试,发布证书用于提交到appStore,我们以开发测试证书为例,选择第一个红框中的内容;

然后下一步,会提示创建CSR文件,也就是证书签名请求文件,会有很详细的操作说明,如果英文不太好,可以参考下图;

(1)       点击钥匙图标

(2)   在菜单栏中依次选择:钥匙串访问⟶偏好设置⟶证书选项卡,下面两项全部选关闭

(3)  生成证书请求:钥匙串访问⟶证书助理⟶从证书颁发机构请求证书

(4)    输入两个电子邮件地址和常用名称。电子邮件地址是你注册AppleID。

a)   常用名称输入你在苹果网站注册的名称,其它名称没试过,不知道行不行。

b)   选择“存储到磁盘”。保存后的名称应该为:CertificateSigningRequest.certSigningRequest

之后将该CSR文件保存到一处;

c)   保存到磁盘后在你的钥匙串访问窗口应该会出两个密钥,一个公钥密钥,一个专用密钥,红色部分就是你在上面输入的常用名。

备注:CSR文件尽量每个证书都制作一次,将常用名称区分开来,因为该常用名称是证书中的密钥的名字;

之后在开发者中心将该CSR文件提交;

(5)         生成Certificates证书

提交上去后就会生成一个cer证书,如图所示,有效期为一年;

利用同样的方法配置一下Distribution发布证书,下载保存,双击安装;在钥题串登陆证书中可以查看,其中专用密钥的名字即为CSR请求文件中的常用名称;

第二步:添加App

IDs

2、以上开发者证书的配置完成了,下面我们来配置appID和推送证书;

选择 “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

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

填写WildcardApp 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”就可以在苹果上登记了。

第四步:申请描述文件(PP文件)

4、PP文件的制作

如图点击“+”

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

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

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

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

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

如果不想自己在重新生成证书,用别人生成的证书,可以从别人的电脑中导出p12文件,参见最下方的"关于.p12证书".

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

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

这里给我们的描述文件取一个名字,这个名字在以后的xcode中是看得到的,所以可以取一个好辨认的名字。取好名字后,选择“Generate”生成描述文件。

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

安装成功后,以前没作为开发机的手机会变成绿色的(以前就是开发机和越狱的手机一直是绿色的,但是不重新申请符合证书的真机调试任然是不能真机调试的)

点击“Provisioning

Profiles” 看到 “Valid profile” 就是成功安装的意思。

如果没有安装成功,一般是证书或者描述文件的问题,看看证书是不是从自己的机子上生成的,描述文件的配置信息(是否和你的本机存在的带秘钥的证书相匹配,你添加的设备是否包含你现在选择调试的设备)等,如图第一个警告是因为没有证书与描述文件相匹配出现的

配置好后,还不是绿灯,则考虑问题:

设备版本高于XCode所能支持的版本,如XCode4.6.3,能支持的最高版本未iOS6.1,如果你的设备系统大于等于iOS7以上,此时需要   更新至XCode5;  再如:XCode5 不支持ios7.1,如果想开发ios7.1,必须将xcode5 升级到 xcode5.1以上版本;

例如:

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

这个必须填:之前写Wildcard

App ID 的内容. app的名字

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

关于.p12证书

为什么要导出.p12文件

当我们用大于三个mac设备开发应用

时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该

只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)

如图:

这时候,再点击“+”时,就会发现点击不了开发和发布证书,也就是添加不了开发证书和发布证书了:

有两个解决不能添加证书的办法。

第一种方法——“revoke”(不推荐):

将以前的证书“revoke”掉,如图:

然后重新生成一个新的证书。

这种方法是可以的,但是会造成相应的Provisioning Profiles失效,这个可大可小。如果只有你一个人则问题不大,如果是一个团队大家都在用,你把这个证书删除了,会导致别人的描述文件失效,这意味着别人不能发布应用了(还可以开发),这可是大问题,所以不提倡这种做法。

第二种方法——“.p12”(推荐):

我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。

注意:一般.p12文件是给与别人使用的,本机必须已经有一个带秘钥的证书才可以生成.p12文件,如图:

打开钥匙串,选择我们需要的证书,右击,选择“导出“iPhone Distribition:```”:

为.p12文件填一个名字,点击存储:

填一个“密码”,“验证”和密码相同:

点击好,在桌面上就形成了一个.p12文件了:

在别人的电脑上要成功安装,须具备两个文件:

该证书导出的“.p12”文件。

苹果开发者中的与“证书”对应的“描述文件”

如果需要用于开发的,那么需要这两个文件:

.p12文件本身就是一个加密的证书,所以用这两个文件就可以让其他mac设备使用了:

拿到这两个文件后,依次双击“证书”,“.p12“文件(需要输入密码,密码就是当时生成.p12时设定的密码,),作用是加入钥匙串中,使我们的电脑具备开发的证明,”描述文件“(作用是置于xcode中,让xcode知道我们开发的合法性),添加完后就可以使用了。

原文链接:http://www.jianshu.com/p/be89a34e0034

苹果所有常用证书,appID,Provisioning Profiles配置说明及制作图文教程相关推荐

  1. 苹果所有常用证书,appID,Provisioning Profiles配置说明及制作图文教程(精)

    概述: 苹果的证书繁锁复杂,制作管理相当麻烦,今天决定重置一个游戏项目中的所有证书,做了这么多次还是感觉很纠结,索性直接记录下来,日后你我他查阅都方便: 首先得描述一下各个证书的定位,作用,这样在制作 ...

  2. 苹果常用证书 配置说明及制作图文教程

    holydancer原创,如需转载,请在显要位置注明: 转自holydancer的CSDN专栏,原文地址:http://blog.csdn.net/holydancer/article/details ...

  3. GSWiFi路由器苹果安卓手机辅助连接通用方法-网线版(图文教程)

    | y1002vip(个人号ID:xypjwifi) | 校园路由器oline(公众号ID:xyrouter) | GSWIFI工作室(公众号ID:gswifi999) 注意此方法请[全程使用手机]来 ...

  4. IOS 证书(Certificate)与描述文件(Provisioning Profiles)

    在使用脚本xcodebuild自动打包的时候,会用到签名证书和描述文件,我在编译的时候搞了好长时间才搞明白,下面介绍如何得到正确配置. 证书:证书是用来给应用程序签名的,只有经过签名的应用程序才能保证 ...

  5. 关于开发证书配置(Certificates Identifiers Provisioning Profiles)IOS发布(转)

    原文:  点击打开链接 标记一下 引言 关于开发证书配置(Certificates & Identifiers & Provisioning Profiles),相信做 iOS 开发的 ...

  6. iOS小知识:开发者后台添加新的UDID之后,如何更新自动管理签名证书的设备描述文件(Provisioning Profiles)?

    文章目录 引言 I.更新自动管理签名证书的设备描述文件的方案 II.iOS无线真机调试 III 手动管理证书: iOS证书(.p12)和描述文件(.mobileprovision)申请 3.1 登录 ...

  7. Apple ID,APP ID,Bundle ID,iOS Certificates,iOS Provisioning Profiles各自含义以及之间的关系

    1.Apple ID   Apple ID其实就是开发者账号.只不过要成为开发者,需要去苹果开发者中心激活开发权限.激活开发者账号分为三种,个人,公司和企业.这三种账号各自有些区别,下表是他们主要区别 ...

  8. Xcode 5中缺少Provisioning Profiles菜单项

    本文翻译自:Provisioning Profiles menu item missing from Xcode 5 After spending a whole day installing a f ...

  9. 创建授权文件(Provisioning Profiles ---- PP文件)

    创建配置描述文件 一.打开iOS Dev Center,"Provisioning Profiles"->"All",点击右上角"+" ...

最新文章

  1. android 图片水印处理 文字倾斜处理
  2. 手机安全卫士——进程管理
  3. 大屏设计的视觉统一_视觉设计中的统一
  4. sql server2008如何创建外键
  5. 自定义Button,复写里面的onKeyDown,不起作用
  6. SCPPO(二十五):从导数据看如何将一天过出多天的效果
  7. leetcode最小面积_LeetCode 题解 |力扣杯 LCP 13.寻宝
  8. [Vuforia]二.3D物体识别
  9. 装饰公司如何做seo
  10. Android小心心动画
  11. 若依微服务版部署到IDEA(超详细,小白看了也能会)
  12. 【蓝桥杯】Python字符串处理和应用
  13. P4281 [AHOI2008]紧急集合 / 聚会(LCA做法)
  14. 【NoteBook】吴晓波:《影响商业的50本书》——第一部分:当商业开始改变世界
  15. C# 托盘图标缓存清除
  16. strok函数用法【转】
  17. vue电商项目sku 规格 详细步骤
  18. 基于SpringBoot框架的美食分享网站系统
  19. Flink部署——Metric Reporters
  20. 润乾报表 表头斜线 怎么设置

热门文章

  1. 什么是top sql
  2. 移动端click延迟解决方案
  3. 2023值得我们关注的10种软件测试趋势
  4. java求六位数以内所有自幂数
  5. ts 手动实现 ts 中的map
  6. win10 win11睡眠后系统无法唤醒解决办法
  7. 中国有嘻哈:网易云、虾米音乐歌词爬虫项目分享
  8. 天气数据API接口记录
  9. 对分解和组合思维方法的理解
  10. opencv 骨架提取/图片细化 代码