前言的前言 :

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

正如前面的文章所言.一套由零 - 申请证书 - 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文件生成证书.多人开发必备 & 前言扫盲的更多相关文章

  1. iOS项目上传到AppStore步骤流程

    1.登录developer.apple.com 2.点击member center后 进下图 3.点击certificates Identifiers进下图 4.点击Certificates进下图,首 ...

  2. 【上传AppStore】iOS项目上传到AppStore步骤流程(第一章) - 上传新的app

    1.登录developer.apple.com 2.点击member center后 然后如下图 3.点击certificates Identifiers 进下图 界面基本介绍请看图 : 4. 其次创 ...

  3. 【上传AppStore】iOS项目上传到AppStore步骤流程(第三章) - 基本信息总汇

    一.App ID(bundle identifier) App ID即Product ID,用于标识一个或者一组App. App ID应该和Xcode中的Bundle Identifier是一致(Ex ...

  4. ios项目上传svn丢失*.a文件

    Win TortoiseSVN:鼠标右键-TortoiseSVN-Settings-General-Subversion-Golobal ignore pattern Win Subversion:编 ...

  5. Webstorm上已有的本地项目上传到Github

    1.Webstorm左上角File —— Settings—— Github, Auth Type改成password,在Login和Password中输入自己的github账户和密码,点Test测试 ...

  6. Mac上配置idea的项目上传到GitHub

    1.安装git,Mac默认已经安装了Git,可以通过命令git —version查询一下. 2.创建SSH KEY(如果已经创建过,则不用再次创建.查看~/.ssh/id_rsa.pub是否存在) 生 ...

  7. ionic 项目中添加modal的步骤流程

    1.首先在templates文件夹下面定义一个新页面,xxx.html,template文件夹在空项目里面是没有的,需要手动添加一个,放在WWW文件夹下面. <ion-modal-view> ...

  8. 分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目

    分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目 这几天着实忙的焦头烂额,可惜不是搞技术,今天周日,难得闲下来,写篇大家都想学习的Git教程,其实廖雪峰老师的网站已经 ...

  9. iOS项目目录结构

    一. 目前最为流行的目录结构是: <先根据模块后根据功能> 的文件目录结构 优点: 模块分明, 并且开发和维护时方便查阅各个功能 缺点: 可能会出现模块内随意建立文件夹, 导致局部逻辑紊乱 ...

随机推荐

  1. HTTP CHUNKED C实现

    C语言不像C#一样有很多很多高度的模块化的东西可以使用,在通讯过程中特别是与http相关的通讯过程中可能要对网站返回的数据做一定处理,而且有不少网站的回应是强制性的,例如向网站请求deflate有个能 ...

  2. 盒子的padding不影响总的大小css代码

    -moz-box-sizing: border-box; /*Firefox3.5+*/-webkit-box-sizing: border-box; /*Safari3.2+*/-o-box-siz ...

  3. Android WebRTC 音视频开发总结(五)-- webrtc开发原型

    这些天基于WebRTC做了个 手机视频监控 的程序,分享出来,供想了解这方面内容的朋友参考. 这个程序最早是广州一家智能穿戴设备公司请我们做的(他们不需要底层源码,也不需要ios版本),之后我们在这个 ...

  4. pect-shell中的自动交互

    这是我在ST写的自动登陆ssh的脚本, 分两个文件 文件1: sssh #!/bin/bash #xql 2011/01/4#auto ssh 138.198.230.170 case $1 in & ...

  5. Jquery设置select控件指定text的值为选中项

    <select name="streetid" id="streetid"> <option value="4">北 ...

  6. CentOS学习笔记--目录配置

      Linux目录配置 类Linux的目录看上去差不多,为什么? 以下内容节选自l 鸟哥的 Linux 私房菜 -- 基础学习篇目录  第六章.Linux 的文件权限与目录配置 3. Linux目录配 ...

  7. HTML5 <meta> 标签属性,所有meta用法都在这里了

    基本标签SEO 优化为移动设备添加 viewportWindows 8其他 禁止数字识自动别为电话号码不让android识别邮箱每 8 秒刷新一次页面移动端的头部标签和meta 基本标签 声明文档使用 ...

  8. Oracle存储过程知识汇总

    基本语法篇: CREATE OR REPLACE PROCEDURE 存储过程名 //CREATE OR REPLACE PROCEDURE 是一个SQL语句通知Oracle数据库去创建一个叫做ske ...

  9. C#中string[ ] args是什么意思,又有什么用呢

    转载:http://blog.sina.com.cn/s/blog_8b7263d1010172jv.html C#控制台程序中static void Main(string[ ] args) str ...

  10. Win7下 httpRequest带证书请求https网站

    常规情况下创建Web请求,并获取请求数据的代码如下: WebRequest req = WebRequest.Create(url); req.Timeout = 15000; WebResponse ...