Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 如何将api限制在iOS版本,比如10_Swift - Fatal编程技术网

Swift 如何将api限制在iOS版本,比如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.*时调用api。我知道我们通常使用@available(10.0,*),但这意味着10及以上


我如何将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当然,我只是在演示如何处理任何次要版本,以防他需要使用两个版本的开关