サーチ…


TargetConditionals

システムヘッダTargetConditionals.hは、使用しているプラ​​ットフォームを判断するためにCとObjective-Cから使用できるいくつかのマクロを定義しています。

#import <TargetConditionals.h>  // imported automatically with Foundation

- (void)doSomethingPlatformSpecific {
#if TARGET_OS_IOS
    // code that is compiled for iPhone / iPhone Simulator
#elif TARGET_OS_MAC && !TARGET_OS_IPHONE
    // code that is compiled for OS X only
#else
    // code that is compiled for other platforms
#endif
}

マクロの値は次のとおりです。

7.0

iOS 9.1、tvOS 9.0、watchOS 2.0、OS X 10.11以降のSDKを使用する場合:

マクロマック iOS iOSシミュレータ時計時計シミュレータテレビテレビシミュレータ
TARGET_OS_MAC 1 1 1 1 1 1 1
TARGET_OS_IPHONE 0 1 1 1 1 1 1
TARGET_OS_IOS 0 1 1 0 0 0 0
TARGET_OS_WATCH 0 0 0 1 1 0 0
TARGET_OS_TV 0 0 0 0 0 1 1
TARGET_OS_SIMULATOR 0 0 1 0 1 0 1
TARGET_OS_EMBEDDED 0 1 0 1 0 1 0
TARGET_IPHONE_SIMULATOR 0 0 1 0 1 0 1
7.0

iOS 8.4、OS X 10.10、またはそれ以前のSDKを使用する場合:

マクロマック iOS iOSシミュレータ
TARGET_OS_MAC 1 1 1
TARGET_OS_IPHONE 0 1 1
TARGET_OS_EMBEDDED 0 1 0
TARGET_IPHONE_SIMULATOR 0 0 1


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow