26
2017
09

Log管理

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());
}
上一篇:工作随笔---WiFi开发(4)---WIFISavedList类 下一篇:数组的拷贝