web-dev-qa-db-ja.com

Swift 3 iOS互換性

私はApple開発中です。すぐにAppStore経由でアプリを配布します。だから今Swift 3を使用し、デフォルトで展開ターゲットはiOS 10.0に設定これは、たとえばiOS 8-9で実行できないことを意味しますか? 'Cos in Swift 3後のOSでは利用できない新しいfuncsを使用します

26
user6485277

Deployment Targetをこれらのバージョンのいずれかに設定することで、iOS 8および9でアプリを実行できます。 Swift 3.xはiOS 8以降と互換性があります(わかりませんが、iOS 7と互換性があるかもしれません)。 Swift 2.2(システム要件に関して)との唯一の違いは、Xcode 8を使用する必要があることです。

展開ターゲットをiOS 10より前のバージョンに設定する場合、iOS 10の新しいAPIを使用できないことに注意する必要があります( #available operator)ただし、Swift 3を使用しても問題ありません。

編集:Swift 3で記述されたアプリをアップロードできるようになりましたXcode 8.0 GMを使用

59
FelixSFD

Swift 3.x(この回答が投稿されてからの最新バージョンSwift))を使用する必要があります。

iOSバージョンは、使用する必要があるSwiftバージョンとは関係ありません。代わりに、新しく提供されたapiの一部はOSの最小バージョンをサポートします。しかし、再び-プログラミング言語とは関係ありませんたとえば、アプリケーションはSwift 2.x(Deployment Target 9.x)経由でビルドされました。iOS10で動作するはずです。IDE =(xcode)、これは-デフォルトで-最新バージョンのプログラミング言語-Swift-をサポートします。

またできること:

if #available(iOS 10, *) {
    // use an api that requires the minimum version to be 10
} else {
    // use another api
}
6
Ahmad F