- 兼容Kotlin
- 可设置Log开启和关闭
- 可设置是否输出到控制台(Logcat)
- 可设置Log全局Tag
- 全局Tag为空时Tag为当前类名
- 可设置Log是否显示头部信息
- Log文件顶部显示设备信息
- Log头部含有当前线程名
- Log头部含有当前类及行号和函数名,支持点击跳转
- 可设置Log是否写入文件
- 可设置Log写入文件目录
- 可设置Log写入文件前缀
- 可设置Log是否显示边框
- 可设置Log控制台过滤器
- 可设置Log文件过滤器
- 可设置Log栈深度
- 支持控制台长字符串的输出
- 支持多参数输出
- 支持单独写入文件
- 支持JSON串的输出
- 支持XML串的输出
- 支持Live Templates
- jar包不足5Kb
init : 初始化
getConfig : 获取log配置
Config.setLogSwitch : 设置log总开关
Config.setConsoleSwitch : 设置log控制台开关
Config.setGlobalTag : 设置log全局tag
Config.setLogHeadSwitch : 设置log头部信息开关
Config.setLog2FileSwitch: 设置log文件开关
Config.setDir : 设置log文件存储目录
Config.setFilePrefix : 设置log文件前缀
Config.setBorderSwitch : 设置log边框开关
Config.setConsoleFilter : 设置log控制台过滤器
Config.setFileFilter : 设置log文件过滤器
Config.setStackDeep : 设置log栈深度
v : tag为类名的Verbose日志
vTag : 自定义tag的Verbose日志
d : tag为类名的Debug日志
dTag : 自定义tag的Debug日志
i : tag为类名的Info日志
iTag : 自定义tag的Info日志
w : tag为类名的Warn日志
wTag : 自定义tag的Warn日志
e : tag为类名的Error日志
eTag : 自定义tag的Error日志
a : tag为类名的Assert日志
aTag : 自定义tag的Assert日志
file : log到文件
json : log字符串之json
xml : log字符串之xml
compile 'com.blankj:alog:1.6.0' or Download
在Application的onCreate函数中初始化,如下
// init it in ur application public void initALog() { ALog.Config config = ALog.init(this) .setLogSwitch(BuildConfig.DEBUG)// 设置log总开关,包括输出到控制台和文件,默认开 .setConsoleSwitch(BuildConfig.DEBUG)// 设置是否输出到控制台开关,默认开 .setGlobalTag(null)// 设置log全局标签,默认为空 // 当全局标签不为空时,我们输出的log全部为该tag, // 为空时,如果传入的tag为空那就显示类名,否则显示tag .setLogHeadSwitch(true)// 设置log头信息开关,默认为开 .setLog2FileSwitch(false)// 打印log时是否存到文件的开关,默认关 .setDir("")// 当自定义路径为空时,写入应用的/cache/log/目录中 .setFilePrefix("")// 当文件前缀为空时,默认为"alog",即写入文件为"alog-MM-dd.txt" .setBorderSwitch(true)// 输出日志是否带边框开关,默认开 .setConsoleFilter(ALog.V)// log的控制台过滤器,和logcat过滤器同理,默认Verbose .setFileFilter(ALog.V)// log文件过滤器,和logcat过滤器同理,默认Verbose .setStackDeep(1);// log栈深度,默认为1 ALog.d(config.toString()); }
借助我帮大家写好的Live Templates大家可以更方便地使用ALog,演示动画如下所示。
大家可以下载这个Live Templates包,然后在AS中File→Import Settings即可。
关于如何写Live Templates,其实大家可以借鉴安卓自带的Live Templates,然后效仿一下即可。
ALog.d("debug");
ALog.d("customTag", "debug0", "debug1");
ALog.d(longStr);
ALog.file(longStr);
ALog.json(json);
ALog.xml(xml);
更多使用请运行demo来查看。