【问题标题】:How to submit an app version which runs on iPhone OS 3 and iPhone SDK 4?如何提交在 iPhone OS 3 和 iPhone SDK 4 上运行的应用程序版本?
【发布时间】:2010-06-28 21:54:44
【问题描述】:

我在我的 Mac 上安装了 sdk 4。 我需要提交在 OS 3 和 OS 4 上运行的版本吗? 我的选择是什么?我可以重新安装 sdk3,然后提交我的应用吗?

如果我使用 SDK4 构建,它会在装有 OS 3 的设备上运行吗? 我不使用 OS 4 的任何功能。

【问题讨论】:

标签: ios iphone ios4 submit


【解决方案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 而不是目标部署
    • 如果它解决了你的问题,你应该绿色检查这个答案。
    猜你喜欢
    • 1970-01-01
    • 2011-03-15
    • 2011-03-08
    • 2013-08-09
    • 1970-01-01
    • 2011-04-29
    • 1970-01-01
    • 1970-01-01
    • 2010-12-23
    相关资源
    最近更新 更多