iPhone How-to:如何移除发布版本中的NSLog输出

iPhone开发中会经常使用NSLog将一些运行信息输出到终端,特别是出于调试的目的。但是实际的发布版本通常是不需要任何终端输出的。对于iPhone应用,这种终端输出的成本跟高。为了在发布版本中的移除NSLog输出也有几种办法。常见的一种就是定义一个DEBUG之类的常量进行NSLog相关代码的条件编译。不过用这种方法需要在每次新建一个项目时进行相应的设定,而且在Log时还需要进行条件编译处理。

  本人认为更好的办法就是为项目定义一个自定义的Log函数,不仅可以有项目特色,而且可以透明地实现发布版本中NSLog输出的移除。自定义的Log函数如下:

#if TARGET_IPHONE_SIMULATOR

#define NDLog(format, …) NSLog(format, ##_VAR_ARGS_)

#else

#define NDLog(format, …) {}

#endif

 

  当然,你如果不想多记一个自定义的Log函数,你还可以一不做二不休,直接重新定义下NSLog,代码如下:

#ifndef TARGET_IPHONE_SIMULATOR

#    define NSLog(...) NSLog(__VA_ARGS__)

#else

#    define NSLog(...) {}

#endif

 

  此外,TARGET_IPHONE_SIMULATOR还可以替换成__OPTIMIZE__,因此__OPTIMIZE__通常是在发布版本中定义的。你所需要做的就是将这些代码包含到项目的预编译头文件中。

  赶快检查下你目前的项目是否需要进行些上述改变呢?

本文出自 “林家男孩” 博客,请务必保留此出处http://bj007.blog.51cto.com/1701577/592130

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值