自定义日志打印
来源:互联网 发布:java 参数 编辑:程序博客网 时间:2024/06/05 20:51
Android中的日志工具类Log(android.util.Log),这个类提供了如下几个方法来提供我们打印:
1.Log.v();
这个方法用于打印那些最为琐碎的,意义最小的日志信息。对应的级别verbose,是Android日志里面级别最低的一中。
2.Log.d();
这个方法是打印一些调试信息,这些信息对你调试程序和分析问题应该有帮助的。对应的级别是debug,比verbose高一级。
3.Log.i();
这个方法是用于打印一些比较重要的数据,这些数据应该是你非常想看的。可以帮助你分析用户行为的那种。对应级别是info,比debug高一级。
4.Log.w();
这个方法用于打印一些警告信息,提示程序在这个地方可能存在潜在的风险,最好去修复一下这些出现的警告的地方。对应的级别warm,比info高一级。
5.Log.e();
这个方法是打印程序中的错误信息,比如程序中的catch语句当中,有错误信息打印的时候。对应的级别是error,比warm高一级
现在我们了解了Android的打印数据的级别,当时有这写在项目中应用还是不够的,这样在项目上线之前我们还要一个一个的将项目中的日志打印代码删除,来保护一些机密诗句不被泄露或者提高运行效率,现在我们就来设计一个既不用删除代码并且能够随意切换日志级别与是否打印的自定义的日志工具类。
package *;import android.text.TextUtils;import android.util.Log;/** * * 日志打印工具 */public class LogUtil { /** * level 决定日志的显示级别, * VERBOSE显示所有级别日志 * 显示中间个个级别的日志 * NOTHING不是显示任何日志 */ private static final int VERBOSE = 1; private static final int DEBUG = 2; private static final int INFO = 3; private static final int WARN = 4; private static final int ERROR = 5; private static final int NOTHING = 6; /** * 控制打印级别 * 是否打印日志 */ private static final int LEVEL = VERBOSE; //本项目默认tag private static final String defaultTag = "zonglv"; public static void v(String msg){ v(null, msg); } public static void v(String tag, String meg){ if(TextUtils.isEmpty(tag)){ tag = defaultTag; } if(LEVEL <= VERBOSE){ Log.v(tag,meg); } } public static void d(String msg){ d(null, msg); } public static void d(String tag, String msg){ if(TextUtils.isEmpty(tag)){ tag = defaultTag; } if(LEVEL <= DEBUG){ Log.d(tag, msg); } } public static void i(String msg){ i(null, msg); } public static void i(String tag, String msg){ if(TextUtils.isEmpty(tag)){ tag = defaultTag; } if(LEVEL <= INFO){ Log.i(tag, msg); } } public static void w(String msg){ w(null,msg); } public static void w(String tag, String msg){ if(TextUtils.isEmpty(tag)){ tag = defaultTag; } if(LEVEL <= WARN){ Log.w(tag, msg); } } public static void e(String msg){ e(null, msg); } public static void e(String tag, String msg){ if(TextUtils.isEmpty(tag)){ tag = defaultTag; } if(LEVEL <= ERROR){ Log.e(tag, msg); } }}
0 0
- 自定义打印日志
- NJLog 自定义日志打印
- IOS自定义打印日志
- 自定义日志打印
- Android自定义kernel日志打印
- 自定义assert宏 出错时打印日志
- java.util.logging自定义打印日志
- 基于自定义日志打印的UDAF调试
- Android自定义日志打印 开发时打印正式上线时不打印
- 如何查找和查看自定义coprocessor中打印的日志信息
- android studio 魅族真机 flyme6 下logcat 打印自定义日志
- 日志打印
- 日志打印
- 日志打印
- 日志打印
- 打印日志
- 日志打印
- 日志打印
- 华为机试题: 将数组中的字符串按指定长度重新分割(java)
- Java HashMap 核心源码解读
- maven下面编译失败,失败提示信息为:程序包com.sun.image.codec.jpeg不存在
- CNTK学习笔记(一)
- iOS-KVC/KVO学习
- 自定义日志打印
- 【线扫描填充算法】用例过程图解
- 一个APP终于能调用外部library了
- we must recreate the epoll after fork
- 单例与序列化的那些事儿
- 支持向量机(理解SVM的三层境界)
- Wireshark 基本介绍和学习 TCP 三次握手
- SQL基本语法(mysql)
- poj2305 Basic remains