使用预编译器定义区分iPhone和Apple TV

时间:2011-05-16 07:22:49

标签: iphone ios

是否有办法将活动开发设备与预编译器定义区分开来。我需要知道我什么时候在Apple TV上,但我不能使用UIKit-Framework。

这样的事情:

#if TARGET_OS_IPHONE
NSLog(@"iPhone");
#else
NSLog(@"ATV");
#endif

1 个答案:

答案 0 :(得分:0)

iOS通常使用习语来确定作为运行时事物的设备类型。

您可以为两者之间的不同构建编写自己的目标。由于AppleTV没有默认目标,因为没有官方SDK,您可能需要自己动手。

XCode 4附带的LLVM / Clang功能之一是运行时检查框架。不确定UIKit是否包含在AppleTV上,但是经过大量修改或者是否丢失了。