【上传AppStore】iOS项目上传到AppStore步骤流程(第二章) - 利用P12文件生成证书.多人开发必备 & 前言扫盲
前言的前言 :
有几种关系需要搞清楚的.由我自己经历的坑和看着网上大多数资料来说,比较混乱.现在整理一下
正如前面的文章所言.一套由零 - 申请证书 - AppIDs - Provisioning Profiles - 打包 - 上传 - 审核 等
这里在总结一下 :
所谓证书(Certificates) : 用我自己的理解就是, 你需要申请一把钥匙, 去开启某些服务 .
按着这种理解,你就会明白, 你首先要知道怎样的服务,需要怎样的钥匙.下面分几种情况
1 , 在苹果Xcode7发布(大概是15年中吧)之前,真机调试时需要证书识别的, 也就是Developer Center 里面的Devices(设备),关于Xcode7之前真机调试需要申请证书的,这里就不阐述了

其实真机调试还是需要申请证书的, 只是真个流程, apple 帮我们简化了, 只要输入开发者账号, (我没试过没输入)就可以了. 请你记住这里就已经产生了一种证书(钥匙) -> 叫做真机调试证书
2 . 开发过程的尾声,一般需要打包ipa让测试人员作整体测试,这个时候需要作打包操作, 那么这也是一种服务(锁),有服务就需要对应证书(钥匙),这种钥匙一般分为两种开发证书,开发和产品证书.从名字你也了解了
如图 :

3 . 苹果还提供了一种推送服务, 没错,是服务(锁) , 那么这里就需要 一个证书了(钥匙) ,而这种证书和上面一样,
分成两种类型 (测试证书)开发推送证书 , (正式环境)产品推送证书
这里有种要求, 就是这种推送证书还需要提供给服务器那边作为(Jave的话需要.p12) (PHP的话需要gem)
具体流程 : 申请推送证书 -> 将推送证书(.cer)文件打包成.p12或者gem文件 -> App注册推送服务(注册成功就能获取DeviceToken) -> 设备可将DeviceToken发送给自己的服务器 -> 服务器通过合格的证书,正确的DeviceToken发送给苹果推送服务器 -> 苹果就会将推送信息发送给对应的手机
前言 , 很多时候 , 因为公司人员的交替轮换 , 一个App会经由多手发布与开发.
接手的人员一般用以前创建下来的账号证书作为该App的证书文件等.
我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。
注意:一般.p12文件是给与别人使用的,简单就是说, 例如A,已经申请证书,并且导入到他的Mac, 那么他就可以用这张证书,制作成.P12文件,然后将该.p12文件发布到项目组下,其他人所用.

问 : 为什么有些证书没有专用密钥?
没有专用密钥的证书, 其实就是没有私钥,该种证书是没法生成.p12文件的.
在Developer Center 下载的证书都是公钥.
问 : .p12的用途?
证书(钥匙),也就私钥才有意义,但是因为设备,账号等等的限制, 复制私钥就显得很重要了,而复制私钥的产品就是.p12
如果你钥匙的概念形成了, 那么你说,复制一把钥匙(.p12文件)给你,你能干嘛?
【上传AppStore】iOS项目上传到AppStore步骤流程(第二章) - 利用P12文件生成证书.多人开发必备 & 前言扫盲的更多相关文章
- iOS项目上传到AppStore步骤流程
1.登录developer.apple.com 2.点击member center后 进下图 3.点击certificates Identifiers进下图 4.点击Certificates进下图,首 ...
- 【上传AppStore】iOS项目上传到AppStore步骤流程(第一章) - 上传新的app
1.登录developer.apple.com 2.点击member center后 然后如下图 3.点击certificates Identifiers 进下图 界面基本介绍请看图 : 4. 其次创 ...
- 【上传AppStore】iOS项目上传到AppStore步骤流程(第三章) - 基本信息总汇
一.App ID(bundle identifier) App ID即Product ID,用于标识一个或者一组App. App ID应该和Xcode中的Bundle Identifier是一致(Ex ...
- ios项目上传svn丢失*.a文件
Win TortoiseSVN:鼠标右键-TortoiseSVN-Settings-General-Subversion-Golobal ignore pattern Win Subversion:编 ...
- Webstorm上已有的本地项目上传到Github
1.Webstorm左上角File —— Settings—— Github, Auth Type改成password,在Login和Password中输入自己的github账户和密码,点Test测试 ...
- Mac上配置idea的项目上传到GitHub
1.安装git,Mac默认已经安装了Git,可以通过命令git —version查询一下. 2.创建SSH KEY(如果已经创建过,则不用再次创建.查看~/.ssh/id_rsa.pub是否存在) 生 ...
- ionic 项目中添加modal的步骤流程
1.首先在templates文件夹下面定义一个新页面,xxx.html,template文件夹在空项目里面是没有的,需要手动添加一个,放在WWW文件夹下面. <ion-modal-view> ...
- 分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目
分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目 这几天着实忙的焦头烂额,可惜不是搞技术,今天周日,难得闲下来,写篇大家都想学习的Git教程,其实廖雪峰老师的网站已经 ...
- iOS项目目录结构
一. 目前最为流行的目录结构是: <先根据模块后根据功能> 的文件目录结构 优点: 模块分明, 并且开发和维护时方便查阅各个功能 缺点: 可能会出现模块内随意建立文件夹, 导致局部逻辑紊乱 ...
随机推荐
- HTTP CHUNKED C实现
C语言不像C#一样有很多很多高度的模块化的东西可以使用,在通讯过程中特别是与http相关的通讯过程中可能要对网站返回的数据做一定处理,而且有不少网站的回应是强制性的,例如向网站请求deflate有个能 ...
- 盒子的padding不影响总的大小css代码
-moz-box-sizing: border-box; /*Firefox3.5+*/-webkit-box-sizing: border-box; /*Safari3.2+*/-o-box-siz ...
- Android WebRTC 音视频开发总结(五)-- webrtc开发原型
这些天基于WebRTC做了个 手机视频监控 的程序,分享出来,供想了解这方面内容的朋友参考. 这个程序最早是广州一家智能穿戴设备公司请我们做的(他们不需要底层源码,也不需要ios版本),之后我们在这个 ...
- pect-shell中的自动交互
这是我在ST写的自动登陆ssh的脚本, 分两个文件 文件1: sssh #!/bin/bash #xql 2011/01/4#auto ssh 138.198.230.170 case $1 in & ...
- Jquery设置select控件指定text的值为选中项
<select name="streetid" id="streetid"> <option value="4">北 ...
- CentOS学习笔记--目录配置
Linux目录配置 类Linux的目录看上去差不多,为什么? 以下内容节选自l 鸟哥的 Linux 私房菜 -- 基础学习篇目录 第六章.Linux 的文件权限与目录配置 3. Linux目录配 ...
- HTML5 <meta> 标签属性,所有meta用法都在这里了
基本标签SEO 优化为移动设备添加 viewportWindows 8其他 禁止数字识自动别为电话号码不让android识别邮箱每 8 秒刷新一次页面移动端的头部标签和meta 基本标签 声明文档使用 ...
- Oracle存储过程知识汇总
基本语法篇: CREATE OR REPLACE PROCEDURE 存储过程名 //CREATE OR REPLACE PROCEDURE 是一个SQL语句通知Oracle数据库去创建一个叫做ske ...
- C#中string[ ] args是什么意思,又有什么用呢
转载:http://blog.sina.com.cn/s/blog_8b7263d1010172jv.html C#控制台程序中static void Main(string[ ] args) str ...
- Win7下 httpRequest带证书请求https网站
常规情况下创建Web请求,并获取请求数据的代码如下: WebRequest req = WebRequest.Create(url); req.Timeout = 15000; WebResponse ...