C-Makro für die Verfügbarkeit von tvOS und Swift API

Einführung

Mit C-Makro für tvOS aus Xcode 7.1 (iOS 9.1 / OS X 10.11 / watchOS 2.0 / tvOS 9.0, Apple LLVM Version 7.0.0 / Apple Swift Version 2.1 / clang-700.1.76 / swiftlang-700.1.101.6) Einführung in die Swift API-Verfügbarkeit.

C-Makro für tvOS

TARGET_OS_TV

TargetConditionals.h

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

Wird beim Generieren von Code für die Ausführung auf Apple TV definiert (TARGET_OS_IPHONE ist ebenfalls 1). Im Fall von iOS ist dies wie folgt definiert.

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

__TVOS_9_0

Availability.h

#define __TVOS_9_0       90000

Definieren Sie die tvOS-Versionsnummer.

__TVOS_UNAVAILABLE, __TVOS_PROHIBITED

Availability.h

#define __TVOS_UNAVAILABLE __OS_AVAILABILITY(tvos,unavailable)
#define __TVOS_PROHIBITED  __OS_AVAILABILITY(tvos,unavailable)

Beide definieren die Nichtverfügbarkeit in tvOS.

__TVOS_AVAILABLE

Availability.h

#define __TVOS_AVAILABLE(_vers) __OS_AVAILABILITY(tvos,introduced=_vers)

Definiert, dass es ab der angegebenen Version von tvOS verfügbar ist.

__TVOS_DEPRECATED(_start, _dep, _msg)

Availability.h

#define __TVOS_DEPRECATED(_start, _dep, _msg) __TVOS_AVAILABLE(_start) __OS_AVAILABILITY_MSG(tvos,deprecated=_dep,_msg)

Definiert, dass es ab der von _start angegebenen Version von tvOS verfügbar und von der von _dep angegebenen Version von tvOS veraltet ist. Geben Sie eine Nachricht an, die eine Alternative mit _msg anweist.

__TV_OS_VERSION_MIN_REQUIRED, __TV_OS_VERSION_MAX_ALLOWED

AvailabilityInternal.h

#ifndef __TV_OS_VERSION_MIN_REQUIRED
    #ifdef __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
        /* compiler sets __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__ when -mtvos-version-min is used */
        #define __TV_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__
        #define __TV_OS_VERSION_MAX_ALLOWED __IPHONE_9_0
        /* for compatibility with existing code.  New code should use platform specific checks */
        #define __IPHONE_OS_VERSION_MIN_REQUIRED 90000
    #endif
#endif

Definiert die minimale / maximale tvOS-Version, die von der Anwendung unterstützt wird. Wenn Sie "-mtvos-version-min" angeben, setzt der Compiler seinen Wert auf "__TV_OS_VERSION_MIN_REQUIRED".

Swift API Availability

Geben Sie "tvOS" als Plattformnamen von "# available" an.

if #available(tvOS 9.1, ..., *) {
    ...

Recommended Posts

C-Makro für die Verfügbarkeit von tvOS und Swift API
Einführung in Zeichen und Zeichenfolgen in C-Sprache für Swift Programmer
[Für Anfänger] Über Lambda-Ausdrücke und Stream-API
[Swift] API für Apps, die die Auswahl bestanden haben
Behandeln Sie Swift-Funktionen und -Verschlüsse als Zeiger für C-Sprachfunktionen
Erstellen Sie UnsafeMutablePointer <UnsafeMutablePointer <Int8>?>! In Swift für C char ** hoge
[Swift] Verwenden Sie diese Option für wo und nicht für und wenn