利用宏定义控制nslog 的输入输出
来源:互联网 发布:专业拍摄淘宝照片店 编辑:程序博客网 时间:2024/06/01 16:56
在项目的过程中,经常遇到要在调试的时候打印log,但是上线或是release 的时候不需要去显示log 的情况,此时你辛辛苦苦写了那么多的log,你要么就手动注释掉,要么就是设一个开关变量,企图用这个总开关开启。其实可以充分利用宏定义进行设置。
步骤比较简单,只需要 在ProjectName_Prefix.pch 中追加你对应的宏定义,不用import 就可以直接使用了。
宏定义写法如下:
#ifdef DEBUG#define LOG(...) NSLog(__VA_ARGS__);#define LOG_METHOD NSLog(@"%s", __func__);#else#define LOG(...); #define LOG_METHOD;#endif
这样设置后,只需要在Product ->Scheme->Edit Scheme ->info选择,是release ,还是debug版本即可。如果debug 版本,则答应log,若release版本则不打印。
我们发布到appstore 上的版本均是release版本,这里简单说下这两个版本的差异。
release 是发行版本,比debug版本要小一些,他们调用两个不同底层库,debug 包含的信息多,可以断点调试,单步执行,使用使用TRACE/ASSERT等调试输出语句,
但是release 版本不包含调试信息,运行速度比较快。
另外在此处设置的DEBUG 参数可以在下面的路径进行设置:工程->Target->Build Setting ->Preprocessor Macros。默认系统已经给出了DEBUG的参数。如果要增加新的参数,则在哪里进行增加。
release 是发行版本,比debug版本要小一些,他们调用两个不同底层库,debug 包含的信息多,可以断点调试,单步执行,使用使用TRACE/ASSERT等调试输出语句,
但是release 版本不包含调试信息,运行速度比较快。
另外在此处设置的DEBUG 参数可以在下面的路径进行设置:工程->Target->Build Setting ->Preprocessor Macros。默认系统已经给出了DEBUG的参数。如果要增加新的参数,则在哪里进行增加。
- 利用宏定义控制nslog 的输入输出
- 利用宏定义控制nslog 的输入输出
- NSLog效率低下的原因以及NSLog宏定义
- NSLog的宏定义改进版本
- Objective-c NSLog 的宏定义
- 宏定义重写NSLog
- 宏定义NSLog
- NSLog宏定义
- NSLog的定义及格式
- 适用于定义的操纵符进行输入输出格式控制
- nslog 宏定义输出 IOS
- NSLog的输出格式和相应的宏定义引申
- 控制DEBUG时候的NSLOG
- 全局控制NSLog的开关
- iOS通过宏定义设置NSLog打印出类名、方法名和NSLog所在行数以及PCH文件的使用
- iOS通过宏定义设置NSLog打印出类名、方法名和NSLog所在行数以及PCH的作用
- 定义debug 和release下的NSLog
- 输入输出的格式控制
- apk自动下载断点续传,自动安装,卸载
- APK签名之keytool生成keystore和jarsigner签名apk
- 适用于android1.5以下版本apk静默安装
- Qt-4.7.1编译全过程
- python之初体验
- 利用宏定义控制nslog 的输入输出
- FLEX中target和currentTarget的区别
- ios常用代码
- Android开发教程——Android应用和任务
- linux 防火墙 iptables 常用命令
- 大数据时代的数据管理
- xp系统下oracle 11g客户端安装先决条件检查全部失败
- 算法
- Linux进程间通信(五): 共享内存(上)