我应该将Live和Dev URL分开。 所以,我写这段代码
#define _APP_MODE @"real"
#if APP_MODE == dev
#define _BASE_URL @"http://devmall.aaa.com/m/app/"
#define _URL_FROM_SAFARI @"http://devmall.safari.com"
#else
#define _BASE_URL @"http://m.aaa.com/m/app/"
#define _URL_FROM_SAFARI @"http://m.safari.com"
但它总是返回dev_url
确保URL由APP_MODE分隔的最佳方法是什么?
答案 0 :(得分:1)
字符串在objC预处理器AFAIK中不起作用
...另见how to compare string in C conditional preprocessor-directives
我做的(并且很常见)是使用整数
#import <Foundation/Foundation.h>
#define DEV 0
#define REAL 1
#define APP_MODE REAL
#if APP_MODE == DEV
#define BASE_URL @"http://devmall.aaa.com/m/app/"
#define URL_FROM_SAFARI @"http://devmall.safari.com"
#else
#define BASE_URL @"http://m.aaa.com/m/app/"
#define URL_FROM_SAFARI @"http://m.safari.com"
#endif
int main(int argc, char *argv[]) {
@autoreleasepool {
NSLog(BASE_URL);
}
}
注意:松开所有奇怪的下划线:))[如果可以]