对于刚加入iOS应用开发行列的开发者来说,终于经过艰苦的Coding后完成了第一个应用后最重要的历史时刻就是将应用程序提交到iTunes App Store。Xcode 4.2开发工具已经把App提交流程化了,但是第一次提交总是充满兴奋和疑问的。本文将大概介绍如何将iOS应用程序提交到App Store的各个流程。希望对想将应用发布到苹果商店的新开发者一些帮助(翻译文章,如有术语错误,请给我留言批评,谢谢)。

怎么把开发完成的iOS App发布提交到App Store视频教程[高清]

最近这篇文章点击很多,昨天到墙外Youtube上辛苦找到了这个精华高清视频。花了我一大晚上4个小时翻译加上了中文字幕,终于发布到了 Youku上面。看对iOS开发新手有没有点点帮助。视频中的美女详细演示了:创建Provisioning Profile、打包App、上传到iTunes Connect,很是详细。19分钟,一定要有耐心慢慢看完吧。看了这个就不用看下面的文字了。

看在我没有功劳也有苦劳的份上给赞一个吧,分享下也行啊!如果你发现有翻译错误的地方,给我留言吧。

iOS开发图书推荐

iOS开发者应该先从Objective-C语言开始学习。然后再开始进入实战开发,以下是iOS开发行业中公认较好的iOS开发教程图书:

1. 《好学的Objective-C/图灵程序设计丛书 (美)德沃》

2. 《OBJECTIVE-C基础教程》

3. 《iPhone开发基础教程/图灵程序设计丛书》

---------------------------------

发布iOS应用程序到App Store - 前期工作

要发布iOS应用程序到App Store首先需要一个iOS developer帐号,账号是收费的,$99美元/年。即便是免费应用也需要一个开发者账号,注册Developer账户这里就不详细介绍了。

然后自然是将App准备好。确保iOS应用程序已经在模拟器(Simulator)中做了全面的测试确认没有Bug了。这是第一个App,要尽量给下载的用户留下好的映象。如果在决定发布前一定要把好测试关,直到App真正准备好发布了。

App发布的工作一切准备好了之后,就可以发布应用到App Store了,应用发布概括起来需要以下几个流程:

1. 注册App ID,在Xcode中指定Bundle Identifier

2. 创建发布证书(Distribution Certificate)

3. 创建Distribution Provisioning Profile

4. 用Distribution Profile为应用签名

5. 打包App

6. 在iTunes Connect上传App

以上大部分的操作是在Provisioning Portal、XCode、Keychain Access工具和iTunes Connect中完成的。

发布iOS应用程序到App Store - 创建App ID

首先给iOS应用程序申请一个App ID,它是你的应用程序的唯一标识。登录iOS Developer网站,点击右侧的iOS Provisioning Portal链接,选择App ID

选择创建新app ID。在Description中输入应用的描述信息。Bundle Identifier是指应用的代码标识,你可以用公司名.应用名来标识,例如:com.company.demoapp。

然后打开X-Code,选择Target > Summary。在Identifier输入框中输入上面注册的Bundle Identifier

发布iOS应用程序到App Store - 创建Distribution Certificate

iOS应用都有一个安全证书用于验证开发者身份和签名。在Provisioning Portal的Distribution栏目下有详细介绍,但总体可以归纳为以下步骤。

1. 打开Keychain Access,在Preferences中关闭OCSP和CRL。

2. 点击Keychain Access菜单,选择Certificate Assistant > Request Certificate from Authority。

3. 输入Email地址,选择Saved to Disk和Let me specify key pair information。点击Continue继续。

4. 选择key size of 2048 bits和RSA algorithm,点击Continue继续。

5. 然后会在桌面上生成一个.CSR的文件。

6. 然后进入Provisioning Portal,选择Certificates -> Distribution -> Add Certificate,添加刚才创建的.CSR签名文件。

7. 在等待审核的时候下载并安装WWDR intermediate certificate。

8. 刷新页面,然后就可以下载证书了。下载后安装。

9. 最后一步,打开Keychain Access。选中刚才安装的private key,选择菜单中的Export Item将私钥导出。将导出的私钥备份到一个安全的地方,以便以后重装了系统可以还原。

发布iOS应用程序到App Store - 创建Distribution Provisioning Profile

打开Provisioning Portal,选择Provisioning -> Distribution,选择添加一个新的profile。Distribution Method要选择App Store,App ID需要输入在前面申请的App ID。提交后需要等一会儿再刷新这个页面。然后就可以下载和安装profile了。安装后profile会被添加到XCode。

发布iOS应用程序到App Store - 检查签名和生成设置

打开XCode,在Build Settings中选择Code Signing。在Release设置上选择刚才申请的Distribution Profile。

选择生成目标为iOS device,然后点击Archiving开始打包应用。

发布iOS应用程序到App Store - 打包App

在提交之间只需要打包应用程序了,打包后就可以把应用上传到iTunes Connect上了。点击Edit Schemes,将Archive设置为Release。

如果你的应用有使用一些外部库,还需要将Build Settings的Skip Install设置为Yes。方法是点击Project下面的工程名,然后打开Build Settings。在输入框中输入Skip Install。将Development下面的Skip Install设置为Yes。

依照上面的方法把Targets下面的工程中的Skip Install设置为No。

打包设置完成后,到了最后一步就是将打包和上传了。从菜单中选择Product -> Archive。打包完成后就可以在Organizer的Archives下面看到你的应用了。

发布iOS应用程序到App Store - 在iTunes Connect添加App

App上传后就可能到iTunes Connect去设置App的销售国家、App的描述和截图了。这些设置会直接体现在App Store上。需要设置银行帐号,并同意签署很多销售条款。

打开iTunes Connect,点击Add a New App。选中之前选中的bundle identifier。之后的操作就不用介绍了,因为都是一样基本的信息设置。你只需要按提示一步一步完成设置即可。

之后你的App就添加成功了,并且会显示Waiting for Upload的状态。你只需要打到XCode Organizer的Archives,点击Submit去上传应用。在应用上传过程中需要你登录并选择你要上传的应用。

应用上传完成之后就只需要等待审核了,一般来说App Store的审核需要几个星期。

这就是我发布第一个iOS App应用程序的完整操作流程。希望能够帮助你了解iOS应用程序提交的步骤的流程。回头看看整个提交流程步骤相当多,但有了第一次的经验,以后提交就容易得多了。

iPhone应用提交流程:如何将App程序发布到App Store?的更多相关文章

  1. iPhone应用提交流程:如何将App程序发布到App Store

    http://www.techolics.com/apple/20120401_197.html 对于刚加入iOS应用开发行列的开发者来说,终于经过艰苦的Coding后完成了第一个应用后最重要的历史时 ...

  2. iPhone应用提交流程:如何将App程序发布到App Store-转

    对于刚加入iOS应用开发行列的开发者来说,终于经过艰苦的Coding后完成了第一个应用后最重要的历史时刻就是将应用程序提交到iTunes App Store.Xcode 4.2开发工具已经把App提交 ...

  3. 如何将App程序发布到App Store?

    见链接:http://my.oschina.net/u/1245365/blog/201920

  4. 将App程序发布到苹果App Store

    发布iOS应用程序到App Store - 前期工作 要发布iOS应用程序到App Store首先需要一个iOS developer帐号,账号是收费的,$99美元/年.即便是免费应用也需要一个开发者账 ...

  5. 如何将App程序发布到苹果App Store

    原文网上抄录 发布步骤登陆苹果开发者中心http://developer.apple.com(99美元账号)进入itunes connect选择Manage Your Apps选择Add New Ap ...

  6. xcode7--iOS开发---将app打包发布至app store

    时隔3个月再次接触应用打包,又是一顿折腾 说说这次的感受吧: 变得是打包时间减少到4小时(其中大部分时间还是xcode7或者是iOS9的原因),不变的是还是一如既往的坑!! 好了,废话不多说,下面讲讲 ...

  7. 发布iOS应用程序到苹果APP STORE完整流程

    参考:http://blog.csdn.net/mad1989/article/details/8167529(xcode APP 打包以及提交apple审核详细流程(新版本更新提交审核)) http ...

  8. 【转】使用Xcode中的iOS SDK给iphone开发出第一个App程序

    之前已经折腾过用Xcode开发OS X的程序了,现在继续折腾,用iOS SDK开发移动设备(iphone/ipad/ipod touch)的程序. 1.从iOS Developer Library中找 ...

  9. 【转】发布iOS应用程序到苹果APP STORE完整流程

    原文: http://www.cnblogs.com/JuneWang/p/3850859.html 可以为每个app上传5张截图,虽然至少需要上传一张,可能很少有人会只上传一张图片.另外,你还需要分 ...

随机推荐

  1. Face recognition using Histograms of Oriented Gradients

    Face recognition using Histograms of Oriented Gradients 这篇论文的主要内容是将Hog算子应用到人脸识别上. 转载请注明:http://blog. ...

  2. FusionChart实现金字塔分布图

    1.XML提供数据源 Pyramid.xml: <?xml version="1.0" encoding="UTF-8"?> <chart m ...

  3. nyist oj 79 拦截导弹 (动态规划基础题)

    拦截导弹 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描写叙述 某国为了防御敌国的导弹突击.发展中一种导弹拦截系统.可是这样的导弹拦截系统有一个缺陷:尽管它的第一发炮弹可以 ...

  4. ssh远程登录linux live系统

    要想ssh远程登录,须要准备两件事:配置同网段IP和开启SSH服务. 因为live系统没有IP,所以首先须要配置IP. 我的live系统是在虚拟机上启动的,宿主IP为192.168.230.1,liv ...

  5. 前端bug记录---不定时更新

    在项目的开发中难免遇到各种各样的bug,我觉得还是有必要记录一下的,方便日后查询. safari window resize  为满足日常轮播需求,做一个符合当前业务的轮播插件,其中需要考虑windo ...

  6. ORA-00911: invalid character

    出错原因:sql语句后面加了中文状态下的分号. 解决办法:改成英文状态下的分号即可. --本篇文章参考自:http://blog.sina.com.cn/s/blog_5b2a1aee0100n4oy ...

  7. Asp.Net页面生命周期--转发(学海无涯)

    一.什么是Asp.Net页面生命周期 当我们在浏览器地址栏中输入网址,回车查看页面时,这时会向服务器端(IIS)发送一个request请求,服务器就会判断发送过来的请求页面,  完全识别 HTTP 页 ...

  8. [Mugeda HTML5技术教程之1] HTML5: 生存还是毁灭

    [Mugeda HTML5技术教程] 开篇: HTML5 - 生存,还是毁灭 摘要:HTML5并不试图解决所有问题.但是在很多适合的场合,HTML5是不二选择. To be, or not to be ...

  9. PclZip:强大的PHP压缩与解压缩zip类

    PclZip简介PclZip是一个很强大的压缩与解压缩zip文件的PHP类,PclZip library能够压缩与解压缩Zip格式的压缩档(WinZip.PKZIP):且能对此类类档案进行处理,包括产 ...

  10. jQuery对下拉框、单选框、多选框的处理

    下拉框: //得到下拉菜单的选中项的文本(注意中间有空格) var cc1 = $(".formc select[@name='country'] option[@selected]&quo ...