赞
踩
开发时,经常用到NSLog,但release是又想一次过清掉all NSLog,方法是:在xxx-Prefix.pch里添加
- #ifdef DEBUG
- # define DLog(...) NSLog(__VA_ARGS__)
- #else
- # define DLog(...) /* */
- #endif
- #define ALog(...) NSLog(__VA_ARGS__)
那么"DEBUG"在哪里定义的呢? 在 "Target > Build Settings > Preprocessor Macros > Debug" 里有一个"DEBUG=1"。
当你Run, Test, Analyze时,就属于debug mode,当Profile, Archive时就属于release mode。见你的ios project的"Edit Scheme..."
#ifdef DEBUG的另外一个用处是:用于push notification。sandbox device token and production device token一定不能mix在一起,否则就可能有些device收不到。见http://blog.csdn.net/totogogo/article/details/8035095
因此我们需要为reg device token准备2个url
- #ifdef DEBUG
- NSString * const REG_URL=@"http://xxxx/reg_dev_token";
- #else
- NSString * const REG_URL=@"http://xxxx/reg_production_token";
- #endif
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。