利用CocoaLumberjack框架+XcodeColors插件,调试输出有彩色的信息
效果如下:
步骤:
1. 安装Xcode插件:XcodeColors(方法请参考这里)
2. 为项目添加 CocoaLumberjack 框架(方法请参考这里)
3. 添加代码
(1) 为项目添加 pch 文件,比如文件名为 PrefixHeader.pch
内容如:
#ifndef <你的项目名>_PrefixHeader_pch
#define <你的项目名>_PrefixHeader_pch #ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "DDLog.h"
#endif #ifdef DEBUG
static const int ddLogLevel = LOG_LEVEL_VERBOSE;
#else
static const int ddLogLevel = LOG_LEVEL_OFF;
#endif #endif
(2) 修改项目 Build Settings 页,更改左上角的 Basic 为 All,在右侧搜索栏里输入“prefix”,快速找到 Apple LLVM 6.x - Language 下面的 Prefix Header
修改值为“项目目录名/PrefixHeader.pch”(这是一个相对路径,必须以项目目录名开头)
(3) 在 AppDelegate.m 的“- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions”里
加入代码:(需要加入头“#import "CocoaLumberjack.h"”)
// Enable XcodeColors
setenv("XcodeColors", "YES", 0); // Standard lumberjack initialization
[DDLog addLogger:[DDTTYLogger sharedInstance]]; // And then enable colors
[[DDTTYLogger sharedInstance] setColorsEnabled:YES];
(4) 在需要调用输出的地方用这样的代码:(图中的例子是写在Button的点击功能里)
DDLogError(@"DDLogError"); // Red
DDLogWarn(@"DDLogWarn"); // Orange
DDLogInfo(@"DDLogInfo"); // Default (black)
DDLogVerbose(@"DDLogVerbose"); // Default (black)
推荐阅读:
利用CocoaLumberjack框架+XcodeColors插件,调试输出有彩色的信息的更多相关文章
- iOS开发进阶 - 日志输出框架CocoaLumberjack与XcodeColors插件的简单使用(swift版)
CocoaLumberjack是Mac和iOS上一个集快捷.简单.强大和灵活于一身的日志框架.XcodeColors是用于控制台着色的工具,配合着CocoaLumberjack用有更好的效果,不废话, ...
- 【iOS】XcodeColors插件与CocoaLumberjack工具
工欲善其事必先利其器,好的开发者一定是懂得利用工具来提高自己的效率的,Xcode有很多第三方插件可以使用,最近发现一个可以给控制台着色的工具XcodeColors,结合CocoaLumberjack一 ...
- 嵌入式框架Zorb Framework搭建一:嵌入式环境搭建、调试输出和建立时间系统
我是卓波,我是一名嵌入式工程师,我万万没想到我会在这里跟大家吹牛皮. 嵌入式框架Zorb Framework搭建过程 嵌入式框架Zorb Framework搭建一:嵌入式环境搭建.调试输出和建立时间系 ...
- android利用apkplug框架实现主应用与插件通讯(传递随意对象)实现UI替换
时光匆匆,乍一看已半年过去了,经过这半年的埋头苦干今天最终有满血复活了. 利用apkplug框架实现动态替换宿主Activity中的UI元素.以达到不用更新应用就能够更换UI样式的目的. 先看效果图: ...
- IT观察】网络通信、图片显示、数据库操作……Android程序员如何利用开源框架
每个Android 程序员都不是Android应用开发之路上孤军奋战的一个人,GitHub上浩如烟海的开源框架或类库就是前人为我们发明的轮子,有的轮子能提高软件性能,而有的轮子似乎是以牺牲性能为代价换 ...
- iOS之利用腾讯Bugly程序调试,测试代码bug、卡顿等情况
1.自己先写一个 Demo 演示一下利用bugly测试崩溃的具体情况. 在ViewController里面实现崩溃代码如下: 运行后 毫无疑问程序报错了! 2.使用到第三方的框架Bugly,官方下载 ...
- 基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录
最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重 ...
- [转]Android中Xposed框架篇—利用Xposed框架实现拦截系统方法
一.前言 关于Xposed框架相信大家应该不陌生了,他是Android中Hook技术的一个著名的框架,还有一个框架是CydiaSubstrate,但是这个框架是收费的,而且个人觉得不怎么好用,而Xpo ...
- 利用 pyspider 框架抓取猫途鹰酒店信息
利用框架 pyspider 能实现快速抓取网页信息,而且代码简洁,抓取速度也不错. 环境:macOS:Python 版本:Python3. 1.首先,安装 pyspider 框架,使用pip3一键安装 ...
随机推荐
- Commit 函数WAIT = 'X'.
BAPI_TRANSACTION_COMMIT IF WAIT EQ SPACE. COMMIT WORK. ELSE. COMMIT WORK AND WAIT. IF SY-SUBRC NE . ...
- c#读取xml操作
1/定义一个XmlDocument对象xDoc 2/通过XmlDocument来load需要读取的xml文件 3/通过XmlDocument的SelectSingleNode来找到节点,并把节点转换为 ...
- Bootstrap主题库
主题 https://startbootstrap.com/template-categories/all/ https://bootstrapmade.com/ http://www.jqueryf ...
- margin无法居中原因
1.要给居中的元素一个宽度,否者无效. 2.该元素一定不能浮动,否者无效. 3 在HTML中使用标签,需考虑好整体构架,否者全部元素都会居中的.
- pyhton3 time模块
来自:菜鸟教程 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 时间间隔是以秒为 ...
- 028_MapReduce中的计数器Counter的使用
一.分析运行wordcount程序屏幕上打印信息 ##运行wordcount单词频率统计程序,基于输出输出路径. [hadoop@hadoop-master hadoop-1.2.1]$ hadoop ...
- Git版本控制系统VCS
Git版本控制系统VCS 一.版本控制系统基本情况说明 版本控制是一种记录一个或者若干个文件内容的变化,以便将来查阅特定版本修订情况的系统 1.作用 记录文件的所有历史变化 随时可回复到任何一个历史状 ...
- sed实例
删除:d命令 $ sed '2d' example-----删除example文件的第二行. $ sed '2,$d' example-----删除example文件的第二行到末尾所有行. $ sed ...
- 【Head First Servlets and JSP】迷你MVC:JarDownload的完整实现
1.首先,写一个download.html放至D:\apache-tomcat-7.0.77\webapps\JarDownload-v1. <!DOCTYPE HTML> <htm ...
- Centos系统 上下文切换的检查思路
1.什么是上下文切换(Context Switch)? 上下文切换,有时也称做进程切换或任务切换,是指CPU从一个进程或线程切换到另一个进程或线程. 操作系统可以同时运行多个进程, 然而一颗CPU同时 ...