我已经制作了一个通用的iPhone / iPad应用程序(仅从iPhone过渡),但在未来版本中,我将大量转换为仅限iOS 4的功能。
对于我的应用的下次更新,我是否只能更新iPhone版本?
答案 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。升级目标的选项应该再次出现。