我正在尝试在同一个XCode项目中拥有两个版本的iPhone应用程序。代码库几乎相同,我需要有不同行为的地方,我决定使用预处理条件和
我已将
然后在我的代码中,我尝试执行:
${TARGET_NAME}
标签。我已将
OTHER_CFLAGS
设置为包含"-DTARGET_NAME=${TARGET_NAME}
"。然后在我的代码中,我尝试执行:
#if TARGET_NAME == myApp
NSLog(@"pro");
#elif TARGET_NAME == myAppLite
NSLog(@"lite");
#endif
很不幸的是,由于TARGET_NAME == myApp
始终为真,因为TARGET_NAME
已定义,我总是得到"lite"的打印输出。我无法想象如何评估这个字符串比较。
有什么想法吗?
提前感谢。
TARGET_NAME == myApp
总是成立,所以总是打印出 "pro" 吗? - Marty