如何在代码中获取基本SDK的版本?我目前正在XCode 6中使用基础SDK 8.1构建iOS。我想知道是否有任何关于SDK的值的定义,以便能够测试它并允许使用不同的基础SDK进行构建。
答案 0 :(得分:2)
通过检查NSFoundationVersionNumber
的值,您可以找到运行代码的当前Foundation框架的版本。
如果您查看NSObjCRuntime.h
,您会在其中找到各种版本号。
关于针对不同版本的SDK进行构建;如果您在截止日期生效后未针对最新的SDK构建,Apple将停止App Store上传 - 即,现在提交的新应用必须针对iOS 8 SDK构建。
您可以做的是拥有较低的 iOS部署目标(您可以在项目的设置中找到)。这将允许您的应用程序在较旧的iOS版本上运行,但它仍将针对最新的SDK构建。但要注意,在没有首先确保当前环境支持它们的情况下,您有责任确保不使用任何新API,例如UITextField's selectable财产。 如果您在iOS 6上运行时调用它,您的应用程序将崩溃。
答案 1 :(得分:1)
这可以使用__IPHONE_OS_VERSION_MAX_ALLOWED(与基本SDK版本相同的版本)完成。这可以与__IPHONE_8_0进行比较,其中8_0是iOS版本。
例如,此时您可以使用baseSDK 8.0或8.1。