2016-09-12 1 views
0

スウィフトは、iOS 10 CBManagerStateで追加された列挙CBCentralManagerStateCBPeripheralManagerStateのためだけの交換で、列挙型は整数だけであるため、新しい交換を使用して、C-土地で結構です、CBManagerStateを使用しているとき@available注釈を追加するために私を必要とし。可用性はSwift列挙型にとって重要ですか?

iOS 9をサポートしたい場合は、これもSwift 2.3でも安全ですか、または廃止予定のバージョンを使用する必要がありますか?

答えて

1

はい、可用性はSDKのすべてのシンボルで重要です。問題は、10未満のiOSバージョンでは数字が利用できないのではなく、実際のCBManagerState記号が利用できないということではありません。

iOS 9をターゲットにしている場合は、そのSDKで使用できる記号と列挙型(「廃止予定」タイプと呼んでいるもの)を使用します。特にiOS 10の機能をサポートしたい場合は、iOS 10の機能またはバージョンの可用性チェックを使用し、チェックの条件が満たされていない場合はiOS 8/9の機能に戻ってください。

+0

これは、 'CBManagerState'シンボルは実際にはCの実行時に_thing_ではなく(C enumです)、混乱を招くNSIntegerへの' typedef'であるためです。 – JHZ

関連する問題