如何提交在 iPhone OS 3 和 iPhone SDK 4 上运行的应用程序版本?
Posted
技术标签:
【中文标题】如何提交在 iPhone OS 3 和 iPhone SDK 4 上运行的应用程序版本?【英文标题】:How to submit an app version which runs on iPhone OS 3 and iPhone SDK 4? 【发布时间】:2010-06-28 21:54:44 【问题描述】:我在我的 Mac 上安装了 sdk 4。 我需要提交在 OS 3 和 OS 4 上运行的版本吗? 我的选择是什么?我可以重新安装 sdk3,然后提交我的应用吗?
如果我使用 SDK4 构建,它会在装有 OS 3 的设备上运行吗? 我不使用 OS 4 的任何功能。
【问题讨论】:
Building for lower version number for iPhone distribution的可能重复 【参考方案1】:在 PROJECT 设置中,将您的 BASE SDK 设置为 4.0
在 TARGET 设置中,将您的 DEPLOY TARGET SDK 设置为 3.0(或 2.x 或任何您喜欢的版本。)
注意:如果您使用的 API 高于最低 DEPLOY 目标(即,您使用 4.0 API 并部署到 3.x),您必须检查了解该 API 的可用性。一种方法是:
// Code written in browser, not tested.
- (BOOL) classIsAvailablie: (NSString*) className
Class *theClass = NSClassFromString(className);
return (theClass != nil);
// ...
if ([self classIsAvailable: @"Some4.0OnlyClass"])
// ...
【讨论】:
【参考方案2】:虽然您可以在目标构建属性中设置 Base SDK,但最新的 Xcode 仅附带 3.2 和 4.0,而前者仅适用于 iPad。相反,您需要下载旧版本的 Xcode (3.2.2) 才能在 iPhone 上开发 3.x。您可以将不同的 Xcode 集安装到 /Developer 以外的不同文件夹中。诀窍是找到旧版本的 Xcode。我保存了我的副本(我强烈建议您始终保留 1 或 2 个版本),但它们不容易与主要的开发者网站链接。您可以转到http://connect.apple.com 并在下载 -> 开发人员工具下找到它们。
这有点令人费解。确实应该有一种方法可以将基础 SDK 安装到最新的 Xcode 版本中。当 Xcode 4 出来时,我们是否必须使用旧接口来开发向后兼容的应用程序?
previous thread 中还介绍了为旧固件开发的详细信息。
【讨论】:
实际上并没有那么复杂:将您的 Base SDK 设置为 4.0,将您的部署目标设置为 3.1.3,只要您的应用不调用任何 3.2 或 4.0 的 API,您就可以构建和运行在 3.1.3 或 3.2 或 4.0 设备上。详情here 谢谢,完美的答案。问题是我将基本 sdk 设置为 3.0 而不是目标部署 如果它解决了你的问题,你应该绿色检查这个答案。以上是关于如何提交在 iPhone OS 3 和 iPhone SDK 4 上运行的应用程序版本?的主要内容,如果未能解决你的问题,请参考以下文章
提交事件 preventDefault() 在 os9 的 iPad/iPhone 上不起作用 [重复]
如何在 iPhone OS 3.1x / 3.2 / 4.0 中管理图像(维度)?
如何使用当前的 Xcode 为 iPhone OS 3.1.2 构建应用程序?