iPhone 2.2.1到3.0的过渡最佳实践

iPhone 2.2.1到3.0的过渡最佳实践,iphone,cocoa-touch,app-store,Iphone,Cocoa Touch,App Store,苹果现在要求应用程序开发者提交针对2.2.1,但也针对3.0的应用程序。我(我想大多数小型/兼职开发人员)只有一部iPhone,由于升级到3.0是不可逆转的,我想了解一下,在过渡期间,有哪些最佳做法可以最大限度地降低风险 我知道在两个操作系统上进行完全回归测试没有万无一失的方法,但是任何关于如何最小化回归的想法都会很有帮助 以下是苹果公司的确切文字: 数以百万计的iPhone和iPodtouch 客户将转向iPhone OS 3.0 今年夏天。从今天开始,所有 提交到应用商店的内容将被删除 在i

苹果现在要求应用程序开发者提交针对2.2.1,但也针对3.0的应用程序。我(我想大多数小型/兼职开发人员)只有一部iPhone,由于升级到3.0是不可逆转的,我想了解一下,在过渡期间,有哪些最佳做法可以最大限度地降低风险

我知道在两个操作系统上进行完全回归测试没有万无一失的方法,但是任何关于如何最小化回归的想法都会很有帮助

以下是苹果公司的确切文字:

数以百万计的iPhone和iPodtouch 客户将转向iPhone OS 3.0 今年夏天。从今天开始,所有 提交到应用商店的内容将被删除 在iPhone的最新测试版上进行了评论 操作系统3.0。如果您的应用程序提交未成功 与iPhone OS 3.0兼容,它将 不被批准

应用商店中的现有应用应 已在iPhone OS 3.0上运行,无需 修改,但您应该测试您的 使用iPhone OS 3.0的现有应用程序 确保没有兼容性 问题。在iPhone OS 3.0成为 可供客户使用的任何应用程序 与iPhone OS 3.0不兼容 无法从应用商店中删除


您对将手机从2.2.1升级到3.0有何顾虑?最新的版本似乎或多或少是可靠的。

除非您有两台设备,否则您真的无法在一台设备上测试2.21和3.0版本。如果这真的很重要,你可以考虑使用iPodtouch(假设你的应用不需要iPhone)

就模拟器而言,一旦安装了3.0 sdk,就无法再构建目标2.2.1。旧的2.2.1构建目标将被3.0目标取代。要同时支持这两种功能,您应该考虑构建一个保留2.2.1 sdk的虚拟机

然而,我同意亚历克斯的观点。。。不需要考虑支持这两个平台。3.0是可靠的,从今天的苹果邮件中可以清楚地看到,就测试和兼容性而言,它现在是主要的焦点


编辑2009年5月17日:在这篇文章之后我学到的一件事是,在Mac上,你不能虚拟化Leopard客户端操作系统。Apple只允许您在虚拟机上运行服务器版本的OS X。IMHO,这确实限制了软件开发人员作为一个群体,我希望最终能改变这种情况。

我在iPhone Dev Central上看到了一个可能有用的文档:

问题是,如果我升级到3.0,我将没有设备可以在2.2.1上测试。模拟器不错,但并不完美。你可以在一台机器上安装两个SDK,只要你把它们放在两个单独的目录中。嗯,令人担忧的是,在3.0发布之前,我可能需要发布一个与3.0兼容但仍能在2.2.1上运行的更新,苹果并没有给我一个很好的方法。你确实可以使用3.0 beta SDK为2.2.1构建—尽管不推荐,因此该选项现在被隐藏了。在生成设置中将项目基本SDK设置为2.2.1(源代码列表中项目文件上的Cmd-I),然后按住option并转到project->Set Active SDK->Use Base SDK菜单项。这对于测试很有用,但如果您提交到应用商店,请使用2.2.1 SDK,直到3.0最终版本。