天极传媒:
天极网
比特网
IT专家网
52PK游戏网
极客修
全国分站

北京上海广州深港南京福建沈阳成都杭州西安长春重庆大庆合肥惠州青岛郑州泰州厦门淄博天津无锡哈尔滨

产品
  • 网页
  • 产品
  • 图片
  • 报价
  • 下载
全高清投影机 净化器 4K电视曲面电视小家电滚筒洗衣机
您现在的位置: 天极网 > 开发>新闻>iOS开发:如何向App Store提交应用

iOS开发:如何向App Store提交应用

博客2013-05-20 09:18我要吐槽

  当你克服重重困难终于开发出了自己的App,下一步就是向App Store提交应用了,这时应该如何操作呢?我的App真的准备好提交了?我敢肯定这些问题将会浮现在你的脑海。基于这篇教程,我将告诉你一个完整的提交过程。

  介绍

  我们都知道苹果审核的过程就像是在“黑箱”操作,但这并不妨碍你为这个审核过程做一些事先的准备。苹果的App Store审核指南已经告诉你哪些是允许的,哪些是不允许的。当你第一次提交你的应用到苹果的时候,这是一个令人兴奋而但又伤脑筋的过程。即使再有经验的 开发者也会措手不及,毕竟这事不像写代码每天都干。

  前提

  在向App Store提交应用的前提是你已经成为苹果iOS开发者项目成员之一,你已经向苹果缴纳了99美元/年的费用。你可以通过此链接注册成为苹果iOS开发者项目成员。点击Enroll Now按钮。

  图1.注册成为iOS开发者

  1.你的应用已经准备好了吗?

  Step1.测试

  写完最后一行代码或者执行完最后一个功能并不意味着你的App已经完成了,你是否让你的应用在多个设备上进行测试了?你的应用是否有内存泄露的问 题?你的 应用程序是否总是崩溃?这几年,iOS设备市场规模增长迅猛,你必须保证你的应用已经在尽可能多的设备上通过测试。常见的问题比如你是否在iPhone 5的4寸屏幕到iPad Mini的7.9寸屏幕上都通过了测试。

  iOS模拟器非常有用,但它是在Mac上运行的,内存和处理能力要比你口袋中的手机强大很多,一款iPhone 3GS和iPhone 5的性能差别更不用多说。作为iOS开发者,你可不能冒着风险长期使用一款过时的iOS设备来创建和维护App,即便App可以在老的iOS设备上很好地 运行,但不代表也可以在新设备上跑的顺畅。

  苹果的审核是封闭的,但能减少不完善的性能表现给用户带来的糟糕体检。如果你的应用时常崩溃,或者启动后不久运行速递变得缓慢迟滞,那在向App Store提交之前你还有不少工作要做。即便苹果审核人员不能发现App存在的问题,但用户会发现。如果用户体验很差,那么用户会给你的差评或者低分,进 一步影响到应用的销售和下载。

  Step2.规则和指南

  就像我前面所说的,苹果为开发者提供了很多文档资料,开发者尤其要注意iOS人机交互指南和App Store审核指南,不过不少开发者没有精力或者难以静下心来认真研读这些文档,那么你的应用将会因为这些文档中列出的要求而被一再拒绝。

  再退一步说,即便你没有研读iOS人机交互指南和App Store审核指南,但开发者也要知道大家常说的那些规则,如下我列出了一些你的应用应该和不应该做的事情。

  你的应用:

  不能崩溃

  不能使用私有API,

  不能复制原生app的功能,

  应该使用IAP(应用内付费)金融交易

  不能在用户不知情的情况下使用相机或者麦克风

  应该使用有版权的图片

  这些只是上边所说的文档内容中很小的一部分。iOS人机交互指南和App Store审核指南内容更多是非常琐碎的。但有的小地方你也许会不经意的违反。比如,在苹果使用启用自家地图之前,MapKit framework使用的是谷歌地图,用户也非常清楚谷歌的logo会放在每张地图的左下角,如果你的应用的用户界面覆盖了谷歌的logo,那么苹果就会 拒绝你的应用。虽然这非常琐碎,但也是不少开发者经常“犯错误”的地方。

  2.预先准备

  在你开始将程序提交到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。

  如果你不确定什么样的App ID适合你的项目,我推荐你读下苹果关于这一主题的文档:Technical Note QA1713。

  Step 2: Distribution Certificate(发布证书)

  iOS应用都有一个安全证书用于验证开发者身份和签名。为了可以向App Store提交app,你需要创建一个iOS provisioning profile 。首先需要创建一个distribution certificate(发布证书),过程类似于创建一个development certificate(开发证书)。如果你已经在实体设备上测试你的App,那么你对创建development certificate就已经很熟悉了。

  如果对此不熟悉,我建议你读下苹果关于signing certificates和provisioning profiles的详细指导。

  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就可以解决这个问题。

  图2:配置Target的Build Settings

  Step 5: Deployment Target(部署目标)

  非常有必要说下deployment target,Xcode中每个target都有一个deployment target,它可以指出app可以运行的最小版本。不过,一旦应用在App Store中生效,再去修改deployment target,你要考虑到一定后果。如果你在更新app的时候提高了deployment target,但是已经购买应用的用户并没有遇到新的deployment target,那么应用就不能在用户的移动设备上运行。如果用户通过iTunes (不是设备)下载了一个更新过的app,然后替代了设备上原先的版本,最后却发现新版本不能在设备上运行,这确实是个问题。

  对此我有两个方法

  (1) 当你决定提高现有app的deployment target时,要在新版本的版本注释中进行说明。如果你提前告知用户,那么至少有一点,你已经尽力阻止问题的发生了。

  (2) 对于一款新app,我经常会把deployment target设置为最近发布的系统版本。因为新iOS版本发布后,渗透率的增长速度是令人难以置信的。很多人认为提高deployment target会失去大部分市场,这个说法并不准确,比如iOS 6,iOS 6发布后一个月,超过60%的设备已经进行了更新。但对Android而言,就是另外一回事了,Android用户并不会像iOS用户那样热衷于更新操作 系统版本。

分页导航
作者:cocoachina责任编辑:Sunny)
请关注天极网天极新媒体 最酷科技资讯
扫码赢大奖
评论
* 网友发言均非本站立场,本站不在评论栏推荐任何网店、经销商,谨防上当受骗!
办公软件IT新闻整机