【上传AppStore】iOS项目上传到AppStore步骤流程(第二章) - 利用P12文件生成证书.多人开发必备 & 前言扫盲

时间:2022-02-07 19:39:48

前言的前言 :

有几种关系需要搞清楚的.由我自己经历的坑和看着网上大多数资料来说,比较混乱.现在整理一下

正如前面的文章所言.一套由零 - 申请证书 - AppIDs - Provisioning Profiles - 打包 - 上传 - 审核 等

这里在总结一下 :

所谓证书(Certificates) :  用我自己的理解就是, 你需要申请一把钥匙, 去开启某些服务 .
按着这种理解,你就会明白, 你首先要知道怎样的服务,需要怎样的钥匙.下面分几种情况
1 , 在苹果Xcode7发布(大概是15年中吧)之前,真机调试时需要证书识别的, 也就是Developer Center 里面的Devices(设备),关于Xcode7之前真机调试需要申请证书的,这里就不阐述了

【上传AppStore】iOS项目上传到AppStore步骤流程(第二章) - 利用P12文件生成证书.多人开发必备 & 前言扫盲

其实真机调试还是需要申请证书的, 只是真个流程, apple 帮我们简化了, 只要输入开发者账号, (我没试过没输入)就可以了. 请你记住这里就已经产生了一种证书(钥匙) -> 叫做真机调试证书

2 . 开发过程的尾声,一般需要打包ipa让测试人员作整体测试,这个时候需要作打包操作, 那么这也是一种服务(锁),有服务就需要对应证书(钥匙),这种钥匙一般分为两种开发证书,开发和产品证书.从名字你也了解了
如图 :

【上传AppStore】iOS项目上传到AppStore步骤流程(第二章) - 利用P12文件生成证书.多人开发必备 & 前言扫盲

3 . 苹果还提供了一种推送服务, 没错,是服务(锁) , 那么这里就需要 一个证书了(钥匙) ,而这种证书和上面一样,
分成两种类型  (测试证书)开发推送证书 , (正式环境)产品推送证书 
这里有种要求, 就是这种推送证书还需要提供给服务器那边作为(Jave的话需要.p12) (PHP的话需要gem)

具体流程 : 申请推送证书 -> 将推送证书(.cer)文件打包成.p12或者gem文件 -> App注册推送服务(注册成功就能获取DeviceToken) -> 设备可将DeviceToken发送给自己的服务器 -> 服务器通过合格的证书,正确的DeviceToken发送给苹果推送服务器 -> 苹果就会将推送信息发送给对应的手机

前言 , 很多时候 , 因为公司人员的交替轮换 , 一个App会经由多手发布与开发.
接手的人员一般用以前创建下来的账号证书作为该App的证书文件等.

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

注意:一般.p12文件是给与别人使用的,简单就是说, 例如A,已经申请证书,并且导入到他的Mac, 那么他就可以用这张证书,制作成.P12文件,然后将该.p12文件发布到项目组下,其他人所用.

【上传AppStore】iOS项目上传到AppStore步骤流程(第二章) - 利用P12文件生成证书.多人开发必备 & 前言扫盲

问 : 为什么有些证书没有专用密钥?

没有专用密钥的证书, 其实就是没有私钥,该种证书是没法生成.p12文件的.
在Developer Center 下载的证书都是公钥.

问 : .p12的用途?

证书(钥匙),也就私钥才有意义,但是因为设备,账号等等的限制, 复制私钥就显得很重要了,而复制私钥的产品就是.p12

如果你钥匙的概念形成了, 那么你说,复制一把钥匙(.p12文件)给你,你能干嘛?