Swift 如何将api限制在iOS版本,比如10
我希望只允许在版本为10.*时调用api。我知道我们通常使用@available(10.0,*),但这意味着10及以上Swift 如何将api限制在iOS版本,比如10,swift,Swift,我希望只允许在版本为10.*时调用api。我知道我们通常使用@available(10.0,*),但这意味着10及以上 我如何将10限制为您是否尝试过类似的方法来限制版本 if floor(NSFoundationVersionNumber) <= floor(Double(NSFoundationVersionNumber10_11)){ print("Before Version 11") } if floor(NSFoundationVersionNumber)您是否尝试过类
我如何将10限制为您是否尝试过类似的方法来限制版本
if floor(NSFoundationVersionNumber) <= floor(Double(NSFoundationVersionNumber10_11)){
print("Before Version 11")
}
if floor(NSFoundationVersionNumber)您是否尝试过类似的方法来限制版本
if floor(NSFoundationVersionNumber) <= floor(Double(NSFoundationVersionNumber10_11)){
print("Before Version 11")
}
如果楼层(NSFoundationVersionNumber)您可以使用代码:
let os = ProcessInfo().operatingSystemVersion
switch (os.majorVersion, os.minorVersion) {
case (10, 0): // iOS 10.0
// Do your code
default:
break // Some other version
}
或者,如果您想用于所有10.*版本的操作系统,只需跳过次要版本:
let os = ProcessInfo().operatingSystemVersion
if os.majorVersion == 10 {
// Do your code
}
您可以使用以下代码:
let os = ProcessInfo().operatingSystemVersion
switch (os.majorVersion, os.minorVersion) {
case (10, 0): // iOS 10.0
// Do your code
default:
break // Some other version
}
或者,如果您想用于所有10.*版本的操作系统,只需跳过次要版本:
let os = ProcessInfo().operatingSystemVersion
if os.majorVersion == 10 {
// Do your code
}
您可以使用#available
而不是@available
,只需测试一下,它似乎可以满足您的需要:
if #available(iOS 11.0, *) {
// leave blank if you don't need to do anything here
} else if #available(iOS 10.0, *) {
print("You're on iOS 10!")
}
您可以使用#available
而不是@available
,只需测试一下,它似乎可以满足您的需要:
if #available(iOS 11.0, *) {
// leave blank if you don't need to do anything here
} else if #available(iOS 10.0, *) {
print("You're on iOS 10!")
}
用一个例子更新你的问题(即使只是伪代码)。如果是iOS 11或iOS 9,您希望做什么?举个例子,我的意思是展示一个API的真实示例。如果设备不是ios10会发生什么?所以基本上我只希望能够为ios10执行一段代码。*,否则我不会运行它。我想知道如何限制该代码只在iOS 10*上运行。所以persudo代码实际上正是我想要的。再次,展示一个真实的例子。我想不出任何逻辑上的原因,为什么你只想在特定版本的iOS下运行某些东西。@mskw这几乎总是开发人员负责修复的东西……用一个例子更新你的问题(即使只是伪代码)。如果是iOS 11或iOS 9,您希望做什么?举个例子,我的意思是展示一个API的真实示例。如果设备不是ios10会发生什么?所以基本上我只希望能够为ios10执行一段代码。*,否则我不会运行它。我想知道如何限制该代码只在iOS 10*上运行。所以persudo代码实际上正是我想要的。再次,展示一个真实的例子。我想不出任何逻辑上的原因,为什么您只希望在特定版本的iOS下运行某些东西。@mskw这几乎总是开发人员负责修复的东西……如果您想在交换机案例(10,u)中处理任何次要版本:
@LeoDabus,或者如果os.majorVersion==10
就执行。不需要开关
@rmaddy当然,我只是演示如何处理任何次要版本,以防他需要同时使用两个版本的开关如果你想在你的开关案例中处理任何次要版本(10,u):
@leodbus,或者如果os.majorVersion==10,就执行。不需要开关
@rmaddy当然,我只是在演示如何处理任何次要版本,以防他需要使用两个版本的开关