Ric*_*ney 6 iphone preprocessor
是否有一个预处理器令牌可用于在构建时检测任何iPhone设备或模拟器?我目前正在使用:
#ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
// This is an iPhone build
#endif
Run Code Online (Sandbox Code Playgroud)
这是推荐的方法还是有更好的方法?我更喜欢内置宏,即由编译器定义,而不是我必须包含的SDK头文件.
我现在并不关心区分iPhone OS版本,但是如果有一个Apple文档页面详细说明了所有相关的宏,当它们被定义和未定义时,我会很感激它的链接,因为我的搜索已经来了到目前为止.
谢谢!
Lou*_*arg 13
从这个网站我们发现你需要TARGET_OS_IPHONE
#if TARGET_OS_IPHONE
//Do iPhone stuff
#else
//Do Mac stuff
#endif
Run Code Online (Sandbox Code Playgroud)
您正在寻找的文件是TargetConditionals.h,它定义了您感兴趣的所有宏.您可以在每个版本的SDK中找到它,例如2.2 SDK的以下路径:
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.2.sdk/usr/include/TargetConditionals.h
Run Code Online (Sandbox Code Playgroud)