Xcode
Кросс-платформенная разработка
Поиск…
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