Macro C pour watchOS et disponibilité de l'API Swift

introduction

Ajout de macros C pour watchOS et la disponibilité de l'API Swift à partir de Xcode 7 (iOS 9.0 / OS X 10.11 / watchOS 2.0, Apple LLVM version 7.0.0 / Apple Swift version 2.0 / clang-700.0.72 / swiftlang-700.0.59) Présentation.

Macro C pour watchOS

TARGET_OS_WATCH

TargetConditionals.h

#define TARGET_OS_IPHONE 1 
#define TARGET_OS_IOS    0
#define TARGET_OS_WATCH  1

Défini lors de la génération de code à exécuter sur une Apple Watch (TARGET_OS_IPHONE vaut également 1). Dans le cas d'iOS, il est défini comme suit.

#define TARGET_OS_IPHONE 1 
#define TARGET_OS_IOS    1
#define TARGET_OS_WATCH  0

__WATCHOS_1_0, __WATCHOS_2_0

Availability.h

#define __WATCHOS_1_0    10000
#define __WATCHOS_2_0    20000

Définissez le numéro de version de watchOS.

__WATCHOS_UNAVAILABLE, __WATCHOS_PROHIBITED

Availability.h

#define __WATCHOS_UNAVAILABLE __OS_AVAILABILITY(watchos,unavailable)
#define __WATCHOS_PROHIBITED  __OS_AVAILABILITY(watchos,unavailable)

Les deux définissent l'indisponibilité dans watchOS.

__WATCHOS_AVAILABLE

Availability.h

#define __WATCHOS_AVAILABLE(_vers) __OS_AVAILABILITY(watchos,introduced=_vers)

Définit qu'il est utilisé à partir de la version spécifiée de watchOS.

__WATCHOS_DEPRECATED(_start, _dep, _msg)

Availability.h

#define __WATCHOS_DEPRECATED(_start, _dep, _msg) __WATCHOS_AVAILABLE(_start) __OS_AVAILABILITY_MSG(watchos,deprecated=_dep,_msg)

Définit qu'il est disponible à partir de la version de watchOS spécifiée par _start et obsolète par la version de watchOS spécifiée par _dep. Spécifiez un message indiquant une alternative avec _msg.

__WATCH_OS_VERSION_MIN_REQUIRED, __WATCH_OS_VERSION_MAX_ALLOWED

AvailabilityInternal.h

#ifndef __WATCH_OS_VERSION_MIN_REQUIRED
    #ifdef __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
        /* compiler sets __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__ when -mwatchos-version-min is used */
        #define __WATCH_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__
        #define __WATCH_OS_VERSION_MAX_ALLOWED 20000
        /* for compatibility with existing code.  New code should use platform specific checks */
        #define __IPHONE_OS_VERSION_MIN_REQUIRED 90000
    #endif
#endif

Définit la version minimale / maximale de watchOS prise en charge par l'application. Si vous spécifiez -mwatchos-version-min, le compilateur définit sa valeur sur __WATCH_OS_VERSION_MIN_REQUIRED.

Swift API Availability Spécifiez watchOS comme nom de plate-forme de # disponible.

if #available(watchOS 2.1, ..., *) {
    ...

Recommended Posts

Macro C pour watchOS et disponibilité de l'API Swift
Macro C pour tvOS et disponibilité de l'API Swift
Présentation des caractères et des chaînes en langage C pour Swift Programmer
[Pour les débutants] À propos des expressions lambda et de l'API Stream
[Swift] API utilisée pour les applications qui ont réussi la sélection
Traitez les fonctions et fermetures Swift comme des pointeurs de fonction en langage C
Créer UnsafeMutablePointer <UnsafeMutablePointer <Int8>?>! En Swift pour C char ** hoge
[Swift] Utiliser pour où plutôt que pour imbriquer pour et si