如何更优雅的打Log

新的篇章

之前做了一个 Android-ui-2019(这个同步更新)
但是有朋友反馈说,开源库内容不错,但是有点太多了,不便于查找,希望我做个开源库整理,听到这个需求,我面对1800+的开源库,竟然有点不好下手,想来想去,我决定将这个开源库进行整理,重新配图并持续更新,希望大家多多关注我。比心~

日常开发中打log日志是我们必不可少的,那么怎么写能让你的Log更美观更好看更显眼呢,今天分享一下我封装Log的方式

方式一

Log.i("lovesosoi","Logi");
Log.d("lovesosoi","Logd");
Log.v("lovesosoi","Logv");
Log.e("lovesosoi","Loge");

方式二

public static String TAG="Lovesosoi";
Log.i(TAG,"Logi");
Log.d(TAG,"Logd");
Log.v(TAG,"Logv");
Log.e(TAG,"Loge");

方式三

将Log进行简单的封装,其实就是做一个开关,也没有加太多的功能

public class LogUtils {
    private static boolean isDebug = true;
    private static String TAG = "tag";

    public boolean isDebug() {
        return isDebug;
    }

    public static void setDebug(boolean debug) {
        isDebug = debug;
    }
    public static void setTag(String debug) {
        TAG = debug;
    }

    public static void e(String msg) {
        if (isDebug) {
            Log.e(TAG,msg);
        }
    }
    public static void e(String tag,String msg) {
        if (isDebug) {
            Log.e(tag,msg);
        }
    }
}
class Test{
    public static void main(){
        LogUtils.setDebug(true);
        LogUtils.setTag("Lovesosoi");
        LogUtils.e("heheh");
    }
}

为了追求更加便捷,好看实用的Log,我在github 上进行了搜索查找,找到了以下的Log开源库。

电脑端显示Log

名字介绍star图片
logger简介好看使用的log库11540星

 

xLog简单、美观、强大、可扩展的 Android 和 Java 日志库1859星

 

KLogAndroid LogCat 工具类,支持行号、所在函数、点击自动跳转、Json格式自定解析打印等功能。1725星

 

FLogger基于双缓冲队列、多刷盘机制的超轻量级 java 日志499星 
jlogjlog是一款针对Android开发者的日志工具478星 
Android-PLogA Pure, Pretty and Powerful logging library for android165星 
LogCollector一个收集 app 输出日志的工具159星 

手机端显示Log

名字介绍star图片
Lynx可在手机上查看 logcat682星

 

LogcatViewer可在手机上查看 logcat226星

 

Console可在手机上查看 logcat92星

 

DebugOverlay-AndroidApp 端,查看 Logcat 信息80星

 

看了大神写的库,我心里就有一个疑问,我和大神的区别在哪里,我总结一下主要是两点,一是样式,大神的样式更好看,二是功能更全,我们去看一下star 最高的代码

解析Logger

为什么Logger能显示Log的代码行数,他是怎么做到的呢

调用这个方法就能获取到当前方法所在方法栈信息,我们再来看看StackTraceElement这个类

我们做一个小测试~

这样类名,方法名,行数就都获取到了。

第二个问题来了,怎么做到这么整洁的呢
源码是这么做的,拼出来的!

其他的就是格式问题了,自己动手封装一个属于自己的Log库试试吧~~

总结

所有开源库都是在 Android-ui-2019基础上修改的,欢迎大家star,我会把我遇到所有好的开源库分享出来,大家一起学习,也欢迎大家订阅我的个人微信公众号MAndroid,有问题可以问我哦,我会尽我所能给大家解答的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值