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

一、前言:

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

二、准备:

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

三、检查:

  1. 你的Xcode必须是正式版的,beta版本的Xcode是不能上传项目的。
  2. 上传使用的MacOS 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和绑定你的AppBundle Identifier

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

  1. 点击App IDs,进入如下界面,点击右上角的 +
点击App IDs
  1. 填写App IDsBundle 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 IDsBundle 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.选择 XcodeProductArchive(专门用于传项目,或者打包项目)

选择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上传

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容