Log管理

来源:互联网 发布:win8.1装ubuntu双系统 编辑:程序博客网 时间:2024/05/16 10:59

1.前言

在平常的Android开发中,为了方便解决bug,优化代码性能,会在代码中合理的输出log,以此来测试代码的执行过程。
为了更好的管理log,并便于分析代码,我们需要将log进行统一管理。

2.Log工具类

(1).LogUtil.java :

import android.util.Log;/** * Created by zhaoying on 16-12-30. * TODO */public class LogUtil {    //通过DEBUG来控制Log是否输出,可以减少不必要的资源消耗    public static final boolean DEBUG = true;    //通过TAG可以自定义log输出类别    public static void i(String TAG,String msg){        if(DEBUG){            Log.i("zy",TAG+" >>>>>>>> "+msg);        }    }    public static void d(String TAG,String msg){        if(DEBUG){            Log.d("zy",TAG+" >>>>>>>> "+msg);        }    }    public static void v(String TAG,String msg){        if(DEBUG){            Log.v("zy",TAG+" >>>>>>>> "+msg);        }    }    public static void w(String TAG,String msg){        if(DEBUG){            Log.w("zy",TAG+" >>>>>>>> "+msg);        }    }    public static void e(String TAG,String msg){        if(DEBUG){            Log.e("zy",TAG+" >>>>>>>> "+msg);        }    }    public static void e(String TAG,String msg,Exception e){        if(DEBUG){            Log.e("zy",TAG+" >>>>>>>> "+msg+", error: "+e.toString());        }    }}

(2)通过log输出堆栈信息

//输出代码具体的调用Log.d(TAG, Log.getStackTraceString(new Throwable()));
//获取当前线程的堆栈for (StackTraceElement i : Thread.currentThread().getStackTrace()) {    Log.i(TAG, i.toString());}