CocoaLumberjack调试的简单使用

主要用于Xcode输出台的彩色化

一、首先安装xCode扩展插件XcodeColors

1.下载地址:https://github.com/robbiehanson/XcodeColors

2.下载完成后,打开XcodeColors项目,直接编译,不需要运行。它会在你的电脑中安装插XcodeColors.xcplugin。具体路径在:~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/XcodeColors.xcplugin。

3.完全退出xCode,重新打开。

4.运行TestXcodeColors项目,尝试,是否安装成功,此项目属于Mac OS项目,等运行成功后,查看输出台。若还是黑白色,跳到2,重新安装一次。

二、引入第三方库CocoaLumberjack。

1.下载DDLog。下载地址:https://github.com/CocoaLumberjack/CocoaLumberjack

2.将CocoaLumberjack/Framework/{Desktop/Mobile}/Lumberjack.xcodeproj拖入自己的项目中,{Desktop/Mobile}是区分Mac OS、iOS开。iOS开发直接Mobile。

  3.打开APP中的target Build Settings,

在User Header Search Paths中加$(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts/include 

  并将Always Search User Paths设置为YES

4.打开APP中的target Build Phases

  在Target Dependencies中添加CocoaLumberjack静态库(直接点击+,在列表中选择CocoaLumberjack)

  在Link Binary With Libraries中添加libCocoaLumberjack.a(添加方式同上,默认会在第一个显示,如果没有,可搜索添加)

 5.最后,在所使用的文件中引用

#import <CocoaLumberjack/CocoaLumberjack.h> 引用的时候不一定会有提示,反正我的是没有。直接手写或者黏贴本文的都行。

三、DDLog常用API介绍 

1.分类

DDTTYLogger:支持将调试语句写入xCode控制台。

DDFileLogger:支持将调试语句写入到文件系统。(可去Git查看文档)

2.DDLog日志种类。

DDLog的输出级别默认提供以下若干种:

DDLogError:定义输出错误文本

DDLogWarn:定义输出警告文本

DDLogInfo:定义输出信息文本

DDLogDebug:定义输出调试文本

DDLogVerbose:定义输出详细文本

四、使用方法

  1.初始化

   [DDLog addlogger:[DDTTYLogger sharedInstance]]; 

  2.启动颜色区分

   [[DDTTYLogger sharedInstance] setColorsEnabled:YES];

   3.设置日志种类的颜色(此处是比较坑爹的,除了两个默认的是有颜色的外,其他的都是黑白色,这是我查了众多资料后的结论,在我实验的时候发现,都是黑色的,后面还有坑死爹程度的坑)

[[DDTTYLogger sharedInstance] setForegroundColor:[UIColor redColor] backgroundColor:nil forFlag:DDLogFlagInfo];

[[DDTTYLogger sharedInstance] setForegroundColor:[UIColor yellowColor] backgroundColor:nil forFlag:DDLogFlagError];

[[DDTTYLogger sharedInstance] setForegroundColor:[UIColor orangeColor] backgroundColor:nil forFlag:DDLogFlagWarning];

[[DDTTYLogger sharedInstance] setForegroundColor:[UIColor blueColor] backgroundColor:nil forFlag:DDLogFlagVerbose];

 4.测试,请忽略我选取的非主流颜色以及高山流水般的对话。

DDLogError(@"队长,别开枪,是我");

DDLogWarn(@"哦,原来是狗屁贾队长");

DDLogInfo(@"嗯,小的就是那狗屁贾队长");

DDLogVerbose(@"说,是不是你小子一人把公厕吃的干干净净");

五、在我所查的多数教程,基本到此结束了。等运行的时候仍然白纸黑字,不错,这里就是上文提到的坑死爹的坑。

  如果按上面的步骤执行后发现在Xcode输出台中任然没有颜色.则需要按以下步骤调节:

  1.在Xcode的菜单栏中选择Product -> Scheme ->Edit Scheme

  2.在Arguments选项卡的下面的Environment Variables中点击+

  Name:XcodeColors

  Value:YES

  OK,大功告成。

  另:也可以在在APPDelegate方法中添加以下判断

  #if TARGET_IPHONE_SIMULATOR

    setenv("XcodeColors","YES",1);

  #endif

  再多啰嗦几句TARGET_IPHONE_SIMULATOR是区分模拟器和设备的,在模拟器上值为1,实际设备上值为0。setenv则是一个增加(改变)环境变量的一个函数。而根据Git上面给的教程,是没有第五步的,我猜想,或者是因为有,以我四级不到的渣渣英语没看明白。要么就是上面的教程是面向真机的,丝毫没考虑到我这样的穷屌只能模拟器运行的情况。

时间: 2025-01-08 16:32:15

CocoaLumberjack调试的简单使用的相关文章

【转】九个Console命令,让js调试更简单

一.显示信息的命令 1: <!DOCTYPE html> 2: <html> 3: <head> 4: <title>常用console命令</title> 5: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 6: </head> 7: <body> 8: <script

Google Chrome 调试JS简单教程[更新]

题外话,刚开始我写这篇内容只是将自己了解的一些知识放上来,不巧的是我分析了我的来访日志,很多朋友都有这个需求,为了大家没有白来,我决定充实下这篇文章.最近更新时间2014-02-14 chrome版本: 32.0.1700.107 m 我是一名忠实Chrome迷,使用它已经快有2年的历史了,整体给我的感觉就是清爽,快速,简洁.又打小广告了……^_^,虽然我知道IE8+也有调试工具,包括火狐的什么XXBUG,但是我用过之后,个人还是十分偏爱chrome的debug. chrome对于在前端打拼的兄

[转]九个Console命令,让js调试更简单

转自:九个Console命令,让js调试更简单 一.显示信息的命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <!DOCTYPE html> <html> <head>     <title>常用console命令</title>     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" 

让js调试更简单—console

一.显示信息的命令 console.log 用于输出普通信息 console.info 用于输出提示性信息 console.error用于输出错误信息 console.warn用于输出警示信息 最常用的就是console.log了. 二.占位符 console上述的集中度支持printf的占位符格式,支持的占位符有:字符(%s).整数(%d或%i).浮点数(%f)和对象(%o): <script type="text/javascript"> console.log(&qu

u-boot命令行调试LCD简单记录

一般来说,调试uboot最好的方式是使用openjtag,因为uboot说到底就是一段裸机程序,只不过比较复杂.但是受实际环境限制,实际工作中使用较多的调试技巧主要有两种:打印和直接在命令行测试,打印比较常见也比较简单,直接使用printf即可,这里就以最近这段时间调试uboot下面lcd为例,简单说说命令行调试. 平台: am335x,u-boot 2010.09,linux 3.10 问题: 由于此版本u-boot比较旧,没有整套framebuffer子系统框架,所以采取的是移植好官方裸机驱

春哥的nginx systemtap调试脚本简单介绍

http://card.weibo.com/article/h5/s#cid=2304185311ad2d0102v9gd&vid=0&extparam=&from=1110006030&wm=0&ip=111.23.134.60 http://blog.sina.cn/dpool/blog/s/blog_5311ad2d0102v9gd.html 2015-01-22 19:45阅读 659 其实下面要说的没多少硬货,算是个自己这些日子使用春哥写的那几个syste

九个Console命令,让 JS 调试更简单

一.显示信息的命令 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>常用console命令</title> 5 <meta http-equiv="Content-Type"content="text/html; charset=utf-8" /> 6 </head> 7 <body> 8 <script type=&quo

单片机调试 - 如何简单有效的插入和删除调试语句

#ifdef __debug #define debug(format,...) printf("File: "__FILE__", Line: %05d-------->"format"/n", __LINE__, ##__VA_ARGS__) #else #define debug(format,...) #endif 说明: 1.编译器支持不定参数的宏定义,' ## '的意思是,如果可变参数被忽略或为空,将使预处理器( preproc

九个Console命令,让js调试更简单

一.显示信息的命令 <!DOCTYPE html> <html> <head> <title>常用console命令</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <script type="text/javascri