基本知识

首先要了解一下Xcode打包签名机制中 Certificates & Identificates &Provisioning Profiles 三者之间的关系:

Certificates:

是证书的意思,是我们开发者账号的认证,也是当前开发者账号是否可用的唯一标示。(是对电脑开发资格的认证,也是对开发者账号的认证,通常用于认证开发者能够在某一台电脑上进行编程),每个开发者账号有两套开发者证书可以选择:

  Developer Certification(开发证书)   安装在电脑上提供权限:开发人员通过设备进行 真机调试 。可以生成副本供多台电脑安装,也就是导出证书秘钥(.p12文件)

Distribution Certification(发布证书)   安装在电脑上提供发布iOS程序的权限:开发人员可以制做测试版和发布版的程序。然后打包上传到iTunesConnect进行发布操作。不可生成副本,仅有配置该证书的电脑才可使用;(副本制做介绍在下面Keychain开发秘钥中介绍)如果app想加入推送功能,就申请对应的带推送的证书:

Identificates:

是身份标示的意思,就是我们的AppID ,如果是在创建发布证书的时候,我们的AppID 要求是唯一的,如果是创建测试证书的时候,我们的APPID可以使用通配符。

Provisioning Profiles:

是描述性文件的意思,是对证书和项目标示的描述文件。

什么是通配符:

通配符就是在上传程序的时候要使用到的一个唯一标示软件ID的一串字符串后面的*号部分,当然在显式的AppID 中不存在通配符,仅仅在通配符AppID中出现。

下面是对公钥、私钥、数字证书的作用理解:

公钥是用来加密签章用的,私钥是用来验证签章解密用的,数字证书使用来提供一对加密与解密的通道或者中介。

使用数字证书的签名机制可以确保该信息是由签名者自己签名发送的,不能否认该事实,信息在发送的过程中不能被任何人修改,因为通过数字证书加密过程是不可逆转的。

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

证书制作流程

下面是证书的制作流程:

第一步:申请本地证书

在钥匙串中生成密钥文件CSR文件(在钥匙串中操作这一步),并将CSR文件下载保存到本地。

如果申请的本地证书要保存在磁盘上的话,邮箱可以随便写。

将证书保存在桌面上。

打开开发者中心,在如下图处点击:“证书、ID、描述性文件” 的图标。

证书分为开发者证书,测试证书两种。要申请证书,都要从右边的  “+”  号处添加。如果要申请开发证书就选择 Development,如果要申请发布证书,就选择 Production,步骤都是选择“+”号后添加证书:

点击了 “+”  之后可以看到的是:

如果是选择开发证书选择第一个 红框。

如果是选择发布证书选择第二个 红框。

下面假设选择了发布证书:

这里我们点击 “continue”

然后会出现下面的页面:

然后选择 “Choose file ” 上传我们从钥匙串中创建的本地证书:

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

下面我们就可以下载我们创建好的证书了。

我们可以在证书下载完成之后,删除原来的从钥匙串中生成的证书了。然后返回到证书界面,就可以看到我们申请的证书了。

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

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

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

项目打包

待续

项目上传 AppStore

待续

iOS项目上线的流程的更多相关文章

  1. java项目上线的流程(将web项目部署到公网)

    本博文来源于网络,原文的地址在本篇博文最下方. 如何将java web项目上线/部署到公网 关于如何将Java Web上线,部署到公网,让全世界的人都可以访问的问题.小编将作出系列化,完整的流程介绍. ...

  2. iOS 项目上线流程

    一.证书的导出      1.1 前期工作        首先你需要有一个苹果的开发者帐号,一个Mac系统.        如果没有帐号可以在打开http://developer.apple.com/ ...

  3. App上线基本流程

    还可参考的:http://www.cocoachina.com/bbs/read.php?tid=330302 iOS项目上传前期准备材料: 1.已有开发者账号 2.已有发布证书 3.一张1024*1 ...

  4. iOS学习——iOS项目Project 和 Targets配置详解

    最近开始学习完整iOS项目的开发流程和思路,在实际的项目开发过程中,我们通常需要对项目代码和资料进行版本控制和管理,一般比较常用的SVN或者Github进行代码版本控制和项目管理.我们iOS项目的开发 ...

  5. iOS 开发之版本上线更新流程

    iOS 开发之版本上线更新流程   把自己app上线的流程记录下来,希望能够让自己加深印象,也能帮助到一些人便是极好的! 证书和描述文件的配置就不写了,直接配置工程吧. 大致把我自己上线的流程写一下: ...

  6. iOS项目的目录结构和开发流程

    转自无网不剩的博客 网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法.   目录结构 AppDelegate Models Ma ...

  7. (转)iOS项目的目录结构和开发流程

    网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法. 目录结构 AppDelegate Models Macro General ...

  8. IOS项目目录结构和开发流程

    网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法.   目录结构 AppDelegate Models Macro Genera ...

  9. 自学linux——16.LAMP项目上线流程

    LAMP项目上线流程 一.编译安装与卸载Nginx(web服务器软件,类似于Apache) 1.安装nginx ①    下载nginx 网页下载https://nginx.org/en/downlo ...

随机推荐

  1. hihocoder 1032 manachar 求回文串O(n)

    #include <cstdio> #include <iostream> #include <algorithm> #include <queue> ...

  2. C语言-回溯例3

    排列问题 1.实现排列A(n,m)对指定的正整数m,n(约定1<m<=n),具体实现排列A(n,m).2. 回溯算法设计设置一维数组a,a(i)(i=1,2,…,m)在1—n中取值.首先从 ...

  3. viewpager 跳转到指定页面

    viewPager.setCurrentItem(getUserIndex(userId)); seCurrentItem是定位到指定页面参数是position

  4. 小贝_mysql主从复制作用以及案例

    mysql主从复制 简要: 一.mysql用户授权 二.mysql bin-log日志 三.mysql主从复制   一.mysql用户授权 1.命令 2.作用:进行权限控制 3.样例: (备注: 同意 ...

  5. ORACLE 查看表结构

    select table_name from user_tables; //当前用户的表 select table_name from all_tables; //所有用户的表 select tabl ...

  6. 官网下载kettle

    首先什么是kettle,引用下百度百科 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行,数据抽取高效稳定. Kettle 中文名称叫水壶,该项目 ...

  7. 目标检测之harr---角点检测harr 的opencv实现

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/29356187 作者:毛星云(浅墨) ...

  8. FeatureLayer.MODE_SNAPSHOT限制数量问题

    我在加载FeatureLayer的时候,采用MODE_SNAPSHOT模式,发现有的图层少了一些数据,改回MODE_ONDEMAND又正常. 究其原因,MODE_SNAPSHOT 是一次性将数据从服务 ...

  9. 九度OJ 1125:大整数的因子 (大数运算)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:974 解决:494 题目描述: 已知正整数k满足2<=k<=9,现给出长度最大为30位的十进制非负整数c,求所有能整除c的k. ...

  10. pyinstaller-py2exe-cx_Freeze打包第一个wxPython程序HelloWorld

    pyinstaller 打包hello 7Mb ================= www.pyinstaller.org pip install pypiwin32 pip install pyin ...