一、前言:

作为一名iOSer,把开发出来的App上传到App Store是必要的。下面就来详细讲解一下具体流程步骤。

二、准备:

  1. 一个已付费的开发者账号(账号类型分为个人(Individual)、公司(Company)、企业(Enterprise)、高校(University)四种类型,每年资费分别为$99、$99、$299、免费。)。
  2. 一个已经开发完成的项目。

三、检查:

  1. 你的Xcode必须是正式版的,beta版本的Xcode是不能上传项目的。
  2. 上传使用的Mac的OS X系统必须也是正式版的,beta版本也不行。
  3. 请确认你安装的Xcode是从App Store或者是开发者网站下载的,而不是从其它渠道获取的安装包安装的,因为非官方途径下载的Xcode可能带有XcodeGhost 病毒。如何检查?
 
检查方法

四、生成发布证书

  1. 打开苹果开发者中心:https://developer.apple.com,点击:Account

     
    苹果开发者中心

    下面输入已付款过的Apple账号和密码登录(如果你的电脑已经保存了密码,会直接进入)

     
    开发者登录账号
  2. 点击:Certificates,Identifiers & Profiles (专门生成证书,绑定Bundle Id,绑定device设备,生成描述文件的地方)

     
    Member Center
  3. 点击Certificates生成证书

    1. 选择iOS, tvOS, watchOS
    2. 选择All
    3. 点击右上角新添加证书
     
    添加新证书1
  4. 由于是做App上传,选择生产证书(选择App Store and Ad Hoc)

 
选择App Store and Ad Hoc

注意:一个开发者账号只能创建(1-2个开发(测试)证书,2-3个生产(发布)证书),如果你的App Store Ad Hoc前面的按钮不能选择,则代表你的这个账号无法再创建新的生产证书了。

解决方法:
1. 从共同使用这个账号的人电脑上生成.p12文件,导入自己的电脑。(尽量不要执行下面第2步)
2. 如果你想生成的话,把现有的删除一个(建议删除时间比较靠前的)。
注意:如果删除一个证书,那么正在使用这个证书的人将不能再使用了,除非重新生成,然后利用.p12重新导入自己的电脑里!
如果你想删除证书,执行下面步骤,否则略过。

 
删除证书

然后接上上图,生产证书部分继续

 
生成证书2
 
生成证书3
 
生成证书4
  1. 上传CSR文件去获取证书(CSR文件需要我们到本机钥匙串里去创建)

    1. 在Launchpad的其他里面,点击钥匙串访问弹出如下界面

       
      其他
       
      钥匙串访问
    2. 工具栏选择钥匙串访问->证书助理->从证书颁发机构请求证书...

       
      请求证书
     
    证书信息
    1. 将CSR文件保存到MAC磁盘的某个位置(这里我选择的是桌面,进行存储)
     
    存储证书
     
    点击完成
     
    CertificateSigningRequest.certSigningRequest 文件
  2. 然后回到浏览器,点击Choose File...

 
选择CSR文件
  1. 选择创建好的:CertificateSigningRequest.certSigningRequest文件,点击选取
 
选取CSR文件

点击Generate上传证书

 
上传CSR证书
  1. 跳转到如下界面,点击 DownLoad 下载生成的证书(cer后缀的文件),然后点击Done,你创建的发布证书就会存储在帐号中。
 
下载生成的证书
 
cer后缀的文件

注意:这个证书只能下载一次。点击下载后,关闭页面后就不能再回到下载页面了。
如果不需要给别的电脑使用,则直接跳过下面附加项,跳转到第五步(绑定Bundle Identifier)

附加项:生成 p12文件在其他电脑上使用这个发布证书

  1. 双击安装证书后,打开钥匙串访问,选择安装的证书右键单击

     
    安装的发布证书

注意:如果没有导出,可以把这个证书删除,然后重新双击下载的证书文件安装。

  1. 导出证书

     
    导出证书
  2. 存储证书

     
    存储导出的证书

    注意:存储的文件格式一定要是.p12

  3. 设置密码
    可以为证书设置密码,也可以不设置密码;如果设置了密码,那么别人安装这个证书的时候就要输入密码,否则无法安装。这里就不设置密码了。

     
    设置密码
  4. 保存导出的证书

     
    p12发布证书

    如果需要在其它电脑上也能发布App,那么就必须要安装这个发布证书。

五、创建App IDs和绑定你的App的Bundle Identifier

回到刚才的页面:https://developer.apple.com/account/ios/identifiers/bundle/bundleList.action

  1. 点击App IDs,进入如下界面,点击右上角的 + 号
 
点击App IDs
  1. 填写App IDs和Bundle Identifier
 
填写App IDs和Bundle Identifier

注意:
1. 上传App使用的Bundle Identifier(不要有-,都是英文+数字)必须是固定的,不能使用占位符。
2. 如果你的Bundle Identifier已经在网站上绑定了,如果你又修改了你工程里面这个Bundle Identifier的话,需要重新进入到开发者账号里面绑定。

 
修改工程的Bundle Identifier

下面选择App中包含的服务,默认有两项,其余的根据自己项目的需求进行选择

 
App Services
  1. 点击Continue

     
    点击continue
  2. 点击Register

     
    点击Register
  3. 点击Done

     
    点击Done

六、生成描述文件(描述文件的作用就是把证书和Bundle Identifier关联起来)

  1. 找到Provisioning Profiles ,点击All,然后点击右上角+号

     
    Provisioning Profiles
  2. 因为是发布,所以选择下面App Store这个描述文件,点击Continue

     
    选择App Store
  3. 在App ID 这个选项栏里面找到你刚刚创建的:App IDs(Bundle Identifier) 类型的套装,点击Continue

     
    选择发布项目的Bundle Identifier
  4. 选择你刚创建的发布证书(或者生成p12文件的那个发布证书),根据自己电脑上的发布证书日期来选择,点击Continue

     
    选择创建的发布证书
  5. 在Profile Name栏里输入一个名字(这个是Provisioning Profiles文件的名字,可随便输入,在这里我用工程名字,便于分别),然后点击Generate

     
    给描述文件起个名字
  6. Download生成的PP文件,然后点击Done,双击安装(闪一下就完事了,没其它效果)

     
    Download生成的PP文件
     
    生成的描述文件

六、在App Store开辟空间

  1. 回到Member Center,点击iTunes Connect

     
    点击iTunes Connect
  2. 登录开发者账号(还是之前已付费的账号)

     
    Snip20160315_68.png
  3. 登录成功后,点击我的App

     
    点击我的App
  4. 点击左上角那个+号,点击新建(注意:我们是iOS App开发,不要选Mac App啦)

     
    新建 App
  5. 依次按提示填入对应信息(SKU是公司用于做统计数据之类的id,根据公司需求填写),然后点击创建

     
    填写App信息

    注意:如果都填好以后,可能会告诉你,你的App名称已经被占用,那么不好意思,你只能改名了!(而且建议大家起名不要往比较出名的App上靠,否则审核可能会被拒绝)

  6. 填写App其它信息

     
    App信息
  7. 填写价格和销售范围(由于我的开发者账号没有签订纳税合同,所以不能上线收费应用,所以只能暂时免费)

     
    填写价格和销售范围
  8. 依次把不同尺寸的App截图拉入到对应的里面
    需要填写不同尺寸的手机屏幕截图(也就是拿不同尺寸的模拟器运行后,挑出至少3页最多5页进行截图然后拖到响应的区里)(在模拟器Command+S 就可以保存屏幕截图到桌面了)(注意:如果提示拖进去的图片尺寸不对,则把模拟器弄成100%然后再Command+S) 尺寸参照表在下面

     
    设置不同尺寸的App截图

    尺寸参照图

     
    尺寸参照图
  9. 填写App简介

     
    填写App简介
  10. 按提示依次输入

     
    按提示依次输入

    错误提示:如果上传App图标失败,提示Alpha错误的话,看下面。
    打开你的图标图片,勾掉这个

     
    勾掉这个
  11. 点击分级后面的编辑,如实填写后,点击完成

     
    分级信息
  12. 填写审核信息

     
    填写审核信息

    版本发布就是:(然后最下面选择自动发布的话就是如果审核通过,就自动上传到App Store供人下载)

  13. 此时这个构建版本还没有生成,我们先把基本信息填写完毕,然后再进入Xcode中把项目打包发送到过来。
    注意:填写完一定要点击右上角的保存。

七、在Xcode中打包工程

找到你刚刚下载的发布证书(后缀为.cer)或者p12文件,和Provisioning Profiles文件,双击,看起来没反应,但是他们已经加入到你的钥匙串中。

  1. 在Xcode中选择iOS Device(这里不能选择模拟器),按照下图提示操作

     
    选择iOS Device
  2. 如果你的应用不支持横屏,把这两个勾去掉

     
    如果你的应用不支持横屏,把这两个勾去掉
  3. 查看版本号和构建版本号

     
    查看版本号和构建版本号
  4. 配置发布证书(ps:截图时选择的证书是错误的,大家注意一下,要选择发布证书)

     
    配置发布证书

    注意:如果这里没有黄色叹号,代表你的配置没问题,如果有,那就是证书和描述文件不匹配,或者描述文件里刚才选的Bundle和现在的工程的Bundle Identifier不一致,去https://develop.apple.com 上找到你的描述文件在确认下绑定的Bundle Identifier和你工程是不是一样的?

     
    检查
  5. 将断点、全局断点,僵尸模式等都要去掉。

     
    去掉断点、全局断点
 
Snip20160315_36.png
 
Snip20160315_37.png
 
去掉僵尸模式

6.设置Release模式(Debug是测试的,Release是发布用的)

 
Snip20160315_39.png
 
Snip20160315_40.png
 
Snip20160315_41.png
 
Snip20160315_42.png

7.选择 Xcode下 Product 下 Archive(专门用于传项目,或者打包项目)

 
选择Archive
 
Snip20160315_45.png
 
Snip20160315_46.png

8.出现下图说明你没有添加开发者账号,点击右下脚Add... 按钮就可以添加

 
没有添加开发者账号

9.输入付费的开发者账号

 
输入开发者账号

可能会弹出下面这个界面,如果不弹出,按Command加。

 
 

10.然后回到Archive(选择已付费的账号),然后点击Choose

 
选择已付费的账号

然后等待

 
等待

11.选择Upload提交

 
Upload提交

12.如下就代表上传成功,如果出错,请参照iOS App上传项目遇到的问题

 
上传成功

13.返回Itunes Connect网站上你自己的App信息中查看一下

 
在App信息中查看

14.在这个构建版本这里就可以添加代码

 
添加代码

点击+号之后选择代码版本

 
添加构建版本

15.提交以供审核

 
提交以供审核

16.App已经从准备提交,变成正在等待审核状态

 
正在等待审核状态

17.等待苹果的审核...

八、补充

1、构建版本的方法有两种,一种是使用 Xcode(上面已经介绍了),另一种就是使用一个叫 Application Loader 这个软件:

 
Application Loader
  • 使用Xcode构建版本:
    上面已经介绍(已经Archive的话,可以在Xcode: Window -> Organizer进入)

     
    Upload to App Store…
  • 使用Application Loader 构建版本:

    • 如上图,点击Export...,导出一个ipa文件(ps:为了保险起见、让苹果审核顺利一点,这里可以先点击Validate...来验证一下,这里就懒得验证了)
    • Application Loader下载Xcode的时候就已经下载了(没有的请自行下载),Xcode 右键弹出下面界面
       
      Open Developer Tool

      打开Application Loader(如果没有登录,会提示你登录你的开发者账号)

       
      Application Loader

      选取你导出的ipa文件(或者双击“交付您的应用程序”选取ipa文件),之后按提示操作就行,上传完毕没有报错的话,过几分钟左右就可以在ITunes Connect 里面就可以看到你上传的这个版本了。

       
      构建版本

补充就这些吧,后面遇到再补充吧!个人建议构建版本使用Application Loader上传

作者:DeveloperLY
链接:https://www.jianshu.com/p/b1b77d804254
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

iOS App上架流程(2016详细版)来源DeveloperLY的更多相关文章

  1. iOS App上架流程(2016详细版)

    iOS App上架流程(2016详细版) 原文地址:http://www.jianshu.com/p/b1b77d804254 感谢大神整理的这么详细 一.前言: 作为一名iOSer,把开发出来的Ap ...

  2. iOS App上架流程(2016详细版

    http://www.jianshu.com/p/b1b77d804254 iOS App上传项目遇到的问题 http://www.jianshu.com/p/9195cd991fc7

  3. iOS - App上架流程(复习+已用xcode8)

    一.前言: 今天又要上架一款APP,顺便来复习一下APP上架流程 下面就来详细讲解一下具体流程步骤. 二.准备: 一个已付费的开发者账号(账号类型分为个人(Individual).公司(Company ...

  4. iOS App 上架流程

                                                             iPhone App 上架流程 1.  申请 App ID (1)  连到 Devel ...

  5. 史上最用心的 iOS App 上架流程

    题记 麻痹起来嗨!看网上那么多的教程,依然在我心爱的爱屁屁在上架的时候遇到各种 J8 问题,最大的问题就是:Xcode 证书什么的,Provisioning Profile 什么的,Debug 什么的 ...

  6. iOS:App上架流程和支付宝支付流程

    App上架大致流程: 1.花99美元在苹果开发中心注册一个开发者账号: 2.登陆开发者账号,进入member Center,即开发者成员中心: 3.选取证书标示符(certificates Ident ...

  7. 苹果iOS App上架流程,非iOS开发人员上架教程

      iOS应用上线发布流程一般包含相关证书文件的配置.Xcode的设置.App Store Connect填写App的相关信息.ipa包上传.审核结果以及相关邮件回复.相关证书文件的配置与Xcode的 ...

  8. 史上最用心的iOS App上架流程【转】

    转:http://www.jianshu.com/p/16fa56eacb5e 题记 麻痹起来嗨!看网上那么多的教程,依然在我心爱的爱屁屁在上架的时候遇到各种 J8 问题,最大的问题就是:Xcode ...

  9. [iOS]App上架流程[利用Archive进行上传]

    今天给大家带来项目如何上架的教程 准备: 1. 一个开发者账号(需要交过钱的,

随机推荐

  1. .NET Core TDD 前传: 编写易于测试的代码 -- 缝

    有时候不是我们不想做单元测试, 而是这代码写的实在是没法测试.... 举个例子, 如果一辆汽车在产出后没完成测试, 那么没人敢去驾驶它. 代码也是一样的, 如果项目未能进行该做的测试, 那么客户就不敢 ...

  2. kubernetes 存储卷

    kubernetes 存储卷    数据卷用于实现容器持久化数据,Kubernetes对于数据卷重新定义,提供了丰富强大的功能.在Kubernetes系统中,当Pod重建的时候,数据卷会丢失,Kube ...

  3. 【Android Studio安装部署系列】六、在模拟器上运行项目

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 在模拟器上运行项目的步骤.不过在实际开发中,一般不采用这种方式,因为影响电脑的运行,所以一般使用真机运行项目. 运行项目 创建模拟器 ...

  4. BeetleX之HttpClusterApi应用详解

    之前的文章已经介绍过如何使用HttpClusterApi进行去中心化的HTTP集群服务访问,这一章主要详细讲述如何使用HttpClusterApi,主要包括如何定义节点,创建服务接口和使用接口描述不同 ...

  5. .net4.5部署到docker容器

    .net4.5部署到docker容器 部署到windows容器 部署到linux容器 部署到windows容器 由于.net本身就是运行在windows平台的,所以它与windows容器也是更加适合, ...

  6. 使用 EOLINKER 进行接口测试的最佳路径 (下)

    本文为 <使用 EOLINKER 进行接口测试的最佳路径> 下半部分文章,主要介绍测试脚本如何执行和报告生成,以及测试项目人员如何协作.还没看过上篇文章请戳 使用 EOLINKER 进行接 ...

  7. 外行人都能看懂的SpringCloud,错过了血亏!

    一.前言 只有光头才能变强 认识我的朋友可能都知道我这阵子去实习啦,去的公司说是用SpringCloud(但我觉得使用的力度并不大啊~~)... 所以,这篇主要来讲讲SpringCloud的一些基础的 ...

  8. Python实例----------每日一贴

    def function_tips(): '''功能:每天输出一条励志文字 ''' import datetime # 导入日期时间类 # 定义一个列表 mot = ["今天星期一:\n人生 ...

  9. vue鼠标悬停事件

    v-bind:title="message" <!DOCTYPE html> <html lang="en"> <head> ...

  10. JS添加或删除HTML dom元素的方法实例分析

    本文实例讲述了JS代码添加或删除HTML dom元素的方法.分享给大家供大家参考,具体如下: 创建新的 HTML 元素 如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一 ...