我们的iPhone应用程序在iOS 6中运行良好,但某些功能在iOS 7测试版上无效。我担心的是,在iOS 7发布之前我们将无法完成iOS 7兼容性,我们的客户将升级到iOS 7并且应用程序将无法使用....导致负面评论等...
有没有人对如何最好地处理这个有任何建议?有没有办法设置应用程序支持的最大SDK?
答案 0 :(得分:0)
我认为如果你这样做,你会得到不好的评论,但如果你不能及时修改它可能是你唯一的选择。
您需要查看this SO answer并使用带有宏的条件
if(SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(@"6.1.3")) {
// work normally
} else {
// fail gracefully
}
禁用您的应用中发布该版本号的任何部分。
我认为有一种方法可以限制安装和尝试使用您的应用程序的更高版本的用户,因为用户的版本早于您的要求。原因可能是虽然可以使用新功能并锁定旧设备,但通常不能无限期地支持新设备。
答案 1 :(得分:0)
如果您在iOS N + 1上运行针对iOS N SDK构建的二进制文件,该设备将替换iOS N的行为。假设您已设置iOS 7设备进行测试,请尝试从App Store下载任何内容 - 您当UISwitch
设置为wantsFullScreen
以及其他所有内容时,应该会看到渐变和宽NO
以及视图控制器正常运行。
所以你不需要处理任何事情。它会在设备上自动处理。
答案 2 :(得分:0)
在任何地方都没有最大的iOS版本设置,但它不是必需的。
如果您使用Xcode 4.6 / iOS 6 SDK构建应用程序,然后在安装了iOS 7的设备上运行它,它可以正常工作吗?如果是这样,那就是你应该首先发布的内容(或者留在应用程序商店中)。如果没有,您需要修复那些出现的问题并发布使用Xcode 4.6进行的更新。只需解决这些问题,不要尝试重新设计和重做iOS7的所有内容。使用Xcode 4.6构建的大多数应用程序都不需要在iOS 7上运行。
使用Xcode 5 / iOS 7 SDK进行构建时,您将需要完全使用并支持iOS 7.但是,在我们获得gm Xcode / SDK之前,您无法发布该版本。如果你还没有准备好,你不必马上走这条路。
答案 3 :(得分:0)
尝试使用UIDevice的systemVersion。
格式为6.1.3或7.0.1
用'。'拆分它们。获得主要版本