必备IDP证书和distribution证书(第一个证书是真机部署测试时用到的,后者证书是发布时需要用到的,缺一不可)。
我就说说接下来应该做的流程。在你保证拥有以上两个证书的前提下,距离app提交审核,已经剩下两大步了:1,ituneconnect创建app,填写项目详细信息。2,xcode打包验证通过,提交项目。
1.预先准备
在你开始将程序提交到App Store之前,你需要有一个App ID,一个有效的发布证书,以及一个有效的Provisioning profile。下面来看看它们各自的作用。
Step 1: App ID(应用ID)
App ID是识别不同应用程序的唯一标示符。每个app都需要一个App ID或者app标识。目前有两种类型的App标识:一个是精确的App ID(explicit App ID),一个是通配符App ID(wildcard App ID)。使用通配符的App ID可以用来构建和安装多个程序。尽管通配符App ID非常方便,但是一个精确的App ID也是需要的,尤其是当App使用iCloud 或者使用其他iOS功能的时候,比如Game Center、Push Notifications或者IAP。
Step 2: Distribution Certificate(发布证书)
iOS应用都有一个安全证书用于验证开发者身份和签名。为了可以向App Store提交app,你需要创建一个iOS provisioning profile 。首先需要创建一个distribution certificate(发布证书),过程类似于创建一个development certificate(开发证书)。如果你已经在实体设备上测试你的App,那么你对创建development certificate就已经很熟悉了。
Step 3: Provisioning Profile(配置文件)
一旦你创建了App ID和distribution certificate,你可以创建一个iOS provisioning profile以方便在App Store中销售你的App。不过,你不能使用和ad hoc distribution相同的provisioning profile。你需要为App Store分销创建一个单独的provisioning profile,如果你使用通配符App ID,那么你的多个app就可以使用相同的provisioning profile。
Step 4: Build Settings(生成设置)
配置App ID、distribution certificate 和provisioning profile已经完成,是时候配置Xcode中target的build settings了。在Xcode Project Navigator的targets列表中选择一个target,打开顶部的Build Settings选项,然后更新一下Code Signing来跟之前创建的distribution provisioning profile相匹配。最近添加的provisioning profiles有时候不会立马就在build settings的Code Signing中看到,重启一下Xcode就可以解决这个问题。
Step 5: Deployment Target(部署目标)
非常有必要说下deployment target,Xcode中每个target都有一个deployment target,它可以指出app可以运行的最小版本。不过,一旦应用在App Store中生效,再去修改deployment target,你要考虑到一定后果。如果你在更新app的时候提高了deployment target,但是已经购买应用的用户并没有遇到新的deployment target,那么应用就不能在用户的移动设备上运行。如果用户通过iTunes (不是设备)下载了一个更新过的app,然后替代了设备上原先的版本,最后却发现新版本不能在设备上运行,这确实是个问题。
(2) 对于一款新app,我经常会把deployment target设置为最近发布的系统版本。因为新iOS版本发布后,渗透率的增长速度是令人难以置信的。很多人认为提高deployment target会失去大部分市场,这个说法并不准确,比如iOS 6,iOS 6发布后一个月,超过60%的设备已经进行了更新。但对Android而言,就是另外一回事了,Android用户并不会像iOS用户那样热衷于更新操作系统版本。
【以上简而言之,最好从项目设计时,就决定是否考虑兼容低版本用户,支持的话,写代码时使用ios新特性时最好做一下判断,if是老版本if是新版本】
2. Assets(资源包)
Step 1: Icons(图标)
Icon是App中不可分割的一部分,你要确保icon尺寸不会出现差错。
iTunes Artwork: 1024px x 1024px (required)
iPad/iPad Mini: 72px x 72px and 114px x 114px (required)
iPhone/iPod Touch: 57px x 57px and 114px x 114px (required)
Search Icon: 29px x 29px and 58px x 58px (optional)
Settings Application: 50px x 50px and 100px x 100px (optional)
Step 2: 屏幕截图
屏幕截图的作用不言而喻,你可以为每个app上传5张截图,虽然至少需要上传一张,可能很少有人会只上传一张图片。另外,你还需要分别为iPhone/iPod Touch和iPad/iPad Mini准备不同的屏幕截图。这也是不小的工作量,但却能展示应用的另一面。Shiny Development开发的一款售价6.99美元的Mac软件Status Magic可以为你节省不少时间。Status Magic可以帮你把状态栏放在截图的正确位置。
屏幕截图和icon是应用给用户的第一感觉,直接关系到用户会不会购买。不过,你所上传的屏幕截图也不一定非得是实际的截图,看看Where’s My Water? 截图可以通过使用此策略,更具吸引力和说服力。
Step 3: 元数据
在提交应用之前,要管理好app的元数据,包括1应用名称、2版本号、3主要类别,4简洁的描述,5关键词,6.支持URL。如果你需要更新应用,你还要提供新增加的版本内容。
如果你的应用需要注册【打开APP需要登录,比如飞信】,你还得向苹果提供一个测试账户或者demo账户,这样审核人员就能很快进入app,而不用再注册账号。
3. 提交准备
Xcode 4以后,开发者提交应用的过程就简单多了,可以直接使用Xcode进行提交。首先在iTunes Connect中创建app,访问iTunes Connect,使用你的iOS开发者账号登陆,点击右边的“Manage Your Apps”,点击左上角的“Add New App”,选择“iOS App”,然后完成表格。
(注意,创建时填的APP就是你开发的项目,名称和ID一定要相同)。https://itunesconnect.apple.com
点击进入
左上角,添加一个APP,如果你的开发账号之前已经提交过app,下面就会列出来。
第一个页面,选择语言,应用名称,skunumber,bundleID(会让你选择自己创建项目的APPID)。
SKU Number是一个用来识别app的特殊字符串。我经常使用app的bundle identifier。最下边是app的Bundle ID,你可以从下来菜单中选择通配符App ID或者准确的App ID。
这个页面是选择app上线的日期(因为apple还需要审核,一般都是推迟几天),售价,以及是否支援教育机构之类的。
以上页面是写版本号,公司名称,软件首类别,次类别(注意两个类别不得重复,否则不会通过),以及评级划分。
以上是软件的内容描述,关键字,技术支持url,以及下面的技术负责人的名字,姓,email,手机号码,这些都很简单,你们都懂的。
----------------------------------------------------------------------------------------------------------------------------------------
—>如果项目要更换图片的话,接下来是选择APPicon 一张1024X1024的软件图标;
继续上传5张软件的截图,要挑选最重要的图片展示,大小是640x960,xcode上集成了截图功能,则是打开window-organizer视图窗口,点击自己的手机标签页下的screenshot,就可以截图了,尺寸正好,很方便的噢亲。
有常规的iphone4,iphone5,以及ipad各个add的入口,有的话就上传,没有的话就空着
由于上传时我忘记截图了,所以次页面就不能展示给大家了,不过很简单的一看就懂。
完事后检查无误,点击提交。
----------------------------------------------------------------------------------------------------------------------------------------
好了,走到这一步,基本上算是完成了一个app的创建,这里列举了你的skunumber,bundleID,appleID,随处可见的edit点击进入可以修改刚才提交的信息,看到红色圈住的状态了:prepare for upload 千万不要认为此时工作完成了,还差一步,如果此时你关闭了页面,准备最后一步,你会发现到时会出错的。我就因为这个绕了半天。
点击坐下的view Details进入后的页面回会是此软件的一个详细列表展示了软件的名称,描述,软件截图,技术联系人信息,等。看完无误后,一定要点击右下角(或右上角)的按钮(Ready to Upload Binary),只有点了这个按钮,才会改变当前status的状态为:waiting for upload。
【注意:如果是Ready for upload 状态,在xcode下打包提交应用,会有:No suitable application records were found.
Please make sure that you have set up a record for this application on iTunes Connect.的错误提示。】
此时,如果你的首页status变成了:waiting for upload 那么恭喜你,此步顺利通过,剩下最后了。(注意如上截图,点击continue,完成了网页的所有工作)。
4.关于xcode上操作:设置证书,build打包,提交项目。
打开xcode,首先确保你配置好了distribution证书,看我如下截图。
确保debug和release都是选中我们申请好的distribution证书。到了次步骤,有的教程说创建一个新的codesigning identity 我也尝试创建了,不过这里不推荐新手创建,因为使用release照样可以打包,创新新的identity认为会让新手更晕菜。(如上截图)
5. 上传二进制文件
为了上传程序,需要为程序创建一个archive。你只能在一台真实设备上创建一个archive。如果你在active scheme中选择了iOS Simulator,那么在Xcode的Product菜单中Archive选项是灰色不可选的。连接一台iOS设备到Mac机器上,然后在active scheme中选择这台设备,然后选择Xcode中Product菜单里面的Archive。
选中项目名称,设备改为ios Device(我们不需要使用模拟器或真机来build打包),然后选择 edit Scheme(如上截图)
此界面顶部要确定选中的是你的项目名称和iosDivice设备;左边栏选中Archive,右边的内容为以上视图。点击ok。(如上截图)
此时大功告成,在xcode-Product菜单选中build一下(快捷键command+B),然后再点击Archive。(如上截图)两个都成功的话,就继续下一步,否则请检查两个证书的配置。
如果一切正常的话,现在你会获得一个archive,并且Xcode的Organizer会自动打开,并显示出刚刚生成的archive。在列表中选中archive,然后点击右边的“Distribute”按钮。在显示出来的画面中,选择“Submit to the iOS App Store”。然后输入你的iOS开发者账号进行认证。接着选择Application 和Code Signing Identity。
应用程序的二进制文件会上传到苹果的服务器中——在这个过程中,你的程序同样需要被验证。如果在验证过程中遇到了错误,程序的提交流程就会失败。验证处理非常有用,如果程序中有一些错误,苹果的 App Store评审团会告诉你具体原因。
Archive成功后,就会在Organizer界面生成我们的应用,进入后可以看到软件详细信息,这个identifier一定要和我们第三步网页上的一致。
1111》点击右边的第一步1,验证此项目。(如上截图);(点击进入后输入apple开发者账号和密码,下一步)
账号通过后,会让你选中application 和distribution证书,依次选择,next(如上截图)。
验证通过后,会有如上界面展示,ok,恭喜你。
2222》接下来,我们继续第二步,提交项目(Distribute)
如果你的项目是需要提交到AppStore,则选择第一个,next(如上截图)
如果是如上提示,那么恭喜你,我们终于完成了这shit的流程,点击finish!!我再也不想看到这些了,close Xcode。(如上截图)
----------------------------------------------------------------------------------------------------------------------------------------
我们再次打开itunesconnect,登录进入-会发现当前项目的status终于变了
Waiting for Review~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~这不就是我们最想要的结果麽!!!终于提交完成了,apple审核时间大约是1-2周,如果通过的话,就会按照我们写的时间上架,如果未通过,会发email~~注意查收噢。
2013年1月14日最新更新 :新版本提交审核
当我们经过重重关卡,新项目终于在AppStore 上线之后,就会接踵而来遇到维护的问题,那么新版本提交,就没有这么复杂了,如果以上的教程你都理解了,新版本也就那么几个需要注意的地方,听我慢慢道来。
1,首先需要修改代码,就是说,你要有更新的内容,比如功能,比如bug(貌似是废话)
2,当确定一切都ok之后,需要设置项目的version和build号,新版本
Version是显示对外的版本号,(itunesconect和Appstore用户可以看到),而build别人看不到,只有开发者自己才能看到,相当于内部版本号。【更新版本的时候,也要高于之前的build号】
3,登录ituneconnect网站,在项目右侧,点击add new version ,弹出提示输入版本名称和更新内容,完事后点save。
4,在网站上详细审查一下新的版本名称和更新内容,还有是否有需要替换的截图,确定无误后点右上角的ready to binary ,到此网站的设置完毕。接下来就是xcode提交新项目了。【此设置有一个需要注意的提示,如下截图】
让你选择是审核通过后自动更新到应用商店,或是自己手动控制更新,很人性化。
5,Xcode设置 codesign identity 为发布的证书,Divice选则iosDevice ,然后build 然后archive,跟上边第一次发布时一样。
6,打开organizer界面的archive标签页,检查无误后,先验证Validate后Distribute。
等待完毕后,如果没有什么问题,刷新itunescnnet网站吧,你新提交的项目状态变成了:Waiting For Review