swiftではバージョンに依存する構文があるのでコードにより判定し, バージョンに見合った処理を書くことが推奨されている
判定方法
コード内で判定する
if #available(引数) {
/*コード*/
}else{
/*コード*/
}
example.swift
// iOS 10以降を要求
if #available(iOS 10, *) {
/*コード*/
}else{
/*コード*/
}
Attributeで指定する
@available(引数)
func f() {
}
example.swift
// iOS 10以降を要求
@available(iOS 10, *)
func f() {
}
引数内の記載について
最初の引数はプラットフォーム名
プラットフォーム名
・iOS
・iOSApplicationExtension
・OSX
・OSXApplicationExtension
・watchOS
・watchOSApplicationExtension
・tvOS
・tvOSApplicationExtension
・* (全プラットホーム)
その他
・利用不可 : unavailable
・導入 : introduced=version number
・非推奨 : deprecated=version number
・廃止 : obsoleted=version number
・メッセージ : message=""
・名称変更 : renamed="新しい名前"
などもある
参考