如果您将iPhone应用程序设为通用版,您可以在将来的版本中撤消它吗?

时间:2010-07-07 20:23:22

标签: iphone ipad app-store universal

我已经制作了一个通用的iPhone / iPad应用程序(仅从iPhone过渡),但在未来版本中,我将大量转换为仅限iOS 4的功能。

对于我的应用的下次更新,我是否只能更新iPhone版本?

2 个答案:

答案 0 :(得分:1)

由于iPad运行的是iOS3.2,因此您的代码必须同时处理这两种情况。

if ([[UIDevice currentDevice].systemVersion isEqualToString:@"4.0"]) {
  [self doOs4Stuff];
} else {
  [self doOs3Stuff];
}

虽然您必须小心使用4.0特定的API,但要使用NSClassFromString()等技巧加载类,以防止它在较旧的OS版本上崩溃。

我的示例也可以使用更强大的版本检查,例如,可以解析字符串以测试主要版本是“4”还是“3”。

答案 1 :(得分:0)

您必须更新这两个应用程序,因为它们捆绑在一个单独的二进制文件中。但是,使用条件编码(例如if !(UIUserInterfaceIdiom() == UIUserInterfaceIdiomPad) { - 请注意我总是像在OS 3.1.3或更低版本上一样检查iPhone / iPod Touch,它将不会返回任何内容),你可以使它只有iPad版本不同。

至于逆转使其成为通用 - 进入您的项目和目标设置,并将“目标设备输入”更改为iPhone或iPad。升级目标的选项应该再次出现。