1、 首先在 https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa 上完成自己 app 的发布前的准备,具体不介绍,网上找一下吧,应该有很多教程 ( 主要是因为文档是我上完 app 之后写的,过程全忘了,而且网上也有很多这样的资料 ) ,最后 app 的 status 是 Waiting For Upload ,即可;
2、 进行 Production 授权
a) 类似于 Development 授权,只是在“ Certificates ”页面和“ Provisioning ”页面中选择“ Distribution ”选项卡:
i. 配置好“ Certificates ”页面中“ Distribution ”选项卡下的“ Current Distribution Certificate ”后,下载下来,双击打开,会打开“访问钥匙串”,右边部分如图
ii. 配置好“ Provisioning ”页面中“ Distribution ”选项卡下的“ Distribution Provisioning Profiles ”后,下载下来,双击打开,自动进入到 xcode 的 Organizer 窗口中的“ Provisioning Profiles ”界面,如图
b) 将 TARGET 中的 Build Settings 中的 Code Signing 的 Code Signing Identity 选择为刚刚添加的 iPhone Distribution:**** ,如图
3、 在 xcode 中的右上角选择使用 iOS Device 执行,如图
选择菜单 Product-->Edit Scheme... ,在弹出窗口的顶部选择自己的项目和 iOS Device ,左侧选择 Archive ,右侧选择如图
点击 OK 按钮即可
4、 选择菜单 Product-->Archive ,开始发布,等待一会, xcode 要重新 build 。
5、 Archive 完之后会自动打开 Organizer 并定位到 Archives 选项卡中,如图
注意网上之前的 xcode 版本 archive 出来的 app 显示 icon , 我的 xcode 是 4.2 , archive 出的 app 是不显示 icon 的,但装到机器上是没问题的。很奇怪 ~ 难倒 apple 搞退化?
6、 选中 app ,点击 validate ,一步一步的验证,如果没问题就可以使用 application loader( 位置在 /Developer/Applications/Utilities/Application Loader) 进行上传了。
我碰到下面的问题
a) application executable is missing a required architecture armv6
解决方法:修改 Build Setting 中 Architectures 为 armv6 armv7 ,修改方法 : 点击 other ,在里面增加 armv6 , ok 之后,再增加 armv7 。如下图
b) 使用 xcode4.2 配套的 Application Loader( 版本号给忘了 ) 不能登录。又在 itunesconnect.apple.com 里面下载了最新的 Application Loader ,可以登录了,但不能上传一直报下面的错误。
c) apple is not currently accepting applications built with this version of the sdk,xcode
好像这个原因是 xcode 和 application loader 版本不一致导致的,具体原因不详,我的解决方法就是下载了 xcode4.3 , 4.3 的 organizer 中集成了 application loader ,可以直接上传 app 。传完之后 app 的状态变为 Waiting For Review ,如图:
据说一般需要 3 天的审核时间,通过之后就可以自动或手动 ( 在第一步创建发布应用的时候选择的 ) 发布到 App Store 上了