public final class LogUtil {
/** all Log print on-off */
private final static boolean all = true;
/** info Log print on-off */
private final static boolean i = true;
/** debug Log print on-off */
private final static boolean d = true;
/** err Log print on-off */
private final static boolean e = true;
/** verbose Log print on-off */
private final static boolean v = true;
/** warn Log print on-off */
private final static boolean w = true;
/** default print tag */
private final static String defaultTag = "qq986945193"; private LogUtil() {
} /**
* info Log print,default print tag
*
* @param msg
* :print message
*/
public static void I(String msg) {
if (all && i) {
android.util.Log.i(defaultTag, msg);
}
} /**
* info Log print
*
* @param tag
* :print tag
* @param msg
* :print message
*/
public static void I(String tag, String msg) {
if (all && i) {
android.util.Log.i(tag, msg);
}
} /**
* debug Log print,default print tag
*
* @param msg
* :print message
*/
public static void D(String msg) {
if (all && d) {
android.util.Log.d(defaultTag, msg);
}
} /**
* debug Log print
*
* @param tag
* :print tag
* @param msg
* :print message
*/
public static void D(String tag, String msg) {
if (all && d) {
android.util.Log.d(tag, msg);
}
} /**
* err Log print,default print tag
*
* @param msg
* :print message
*/
public static void E(String msg) {
if (all && e) {
try {
android.util.Log.e(defaultTag, msg);
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
} /**
* err Log print
*
* @param tag
* :print tag
* @param msg
* :print message
*/
public static void E(String tag, String msg) {
if (all && e) {
android.util.Log.e(tag, msg);
}
} /**
* verbose Log print,default print tag
*
* @param msg
* :print message
*/
public static void V(String msg) {
if (all && v) {
android.util.Log.v(defaultTag, msg);
}
} /**
* verbose Log print
*
* @param tag
* :print tag
* @param msg
* :print message
*/
public static void V(String tag, String msg) {
if (all && v) {
android.util.Log.v(tag, msg);
}
} /**
* warn Log print,default print tag
*
* @param msg
* :print message
*/
public static void W(String msg) {
if (all && w) {
android.util.Log.w(defaultTag, msg);
}
} /**
* warn Log print
*
* @param tag
* :print tag
* @param msg
* :print message
*/
public static void W(String tag, String msg) {
if (all && w) {
android.util.Log.w(tag, msg);
}
} }
工具类源代码java文件下载地址:http://download.csdn.net/detail/qq_21376985/9478958

Android开发之封装log打印日志的工具类,实用logutils详细代码的更多相关文章

  1. Android开发学习之路-Palette颜色提取工具类使用

    视频(要FQ):https://www.youtube.com/watch?v=5u0dtzXL3PQ Palette是一个在support-v7包中的一个颜色提取工具类,用法比较简单,而且是谷歌官方 ...

  2. Go/Python/Erlang编程语言对比分析及示例 基于RabbitMQ.Client组件实现RabbitMQ可复用的 ConnectionPool(连接池) 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil 分享基于MemoryCache(内存缓存)的缓存工具类,C# B/S 、C/S项目均可以使用!

    Go/Python/Erlang编程语言对比分析及示例   本文主要是介绍Go,从语言对比分析的角度切入.之所以选择与Python.Erlang对比,是因为做为高级语言,它们语言特性上有较大的相似性, ...

  3. 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil

    封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,代码比较简单,主要是把MongoTarget的配置.FileTarget的配置集成到类中,同时利用缓存依赖来判断是否需要重新创 ...

  4. 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,nloglogutil

    封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,代码比较简单,主要是把MongoTarget的配置.FileTarget的配置集成到类中,同时利用缓存依赖来判断是否需要重新创 ...

  5. 自己封装的poi操作Excel工具类

    自己封装的poi操作Excel工具类 在上一篇文章<使用poi读写Excel>中分享了一下poi操作Excel的简单示例,这次要分享一下我封装的一个Excel操作的工具类. 该工具类主要完 ...

  6. C# 日志记录工具类--LogHelper.cs测试

    C# 日志记录工具类:(适用于不想使用log4j等第三方的Log工具的时候,希望自己写个简单类实现)LogHelper.cs内容如下: using System; using System.Diagn ...

  7. 为什么要用Hibernate框架? 把SessionFactory,Session,Transcational封装成包含crud的工具类并且处理了事务,那不是用不着spring了?

    既然用Hibernate框架访问管理持久层,那为何又提到用Spring来管理以及整合Hibernate呢?把SessionFactory,Session,Transcational封装成包含crud的 ...

  8. 一、JDBC的概述 二、通过JDBC实现对数据的CRUD操作 三、封装JDBC访问数据的工具类 四、通过JDBC实现登陆和注册 五、防止SQL注入

    一.JDBC的概述###<1>概念 JDBC:java database connection ,java数据库连接技术 是java内部提供的一套操作数据库的接口(面向接口编程),实现对数 ...

  9. logback的使用和logback.xml详解,在Spring项目中使用log打印日志

    logback的使用和logback.xml详解 一.logback的介绍 Logback是由log4j创始人设计的另一个开源日志组件,官方网站: http://logback.qos.ch.它当前分 ...

随机推荐

  1. electron 开发 - win7 运行后白屏 黑屏

    解决思路: localhost:3000本地react项目确保运行无误 electron 官方demo跑一遍确认不是配置问题 切换electron版本,发现5可以6不行 google 官方issue ...

  2. 关于welcom-file-list 失效

    遇到个很奇怪的问题: 在使用shrio的时候,未登陆的情况下,能正常识别转发welcome-file-list    index 登陆之后无法识别welcom-file-list,需要手动输入/ind ...

  3. Windows系统护眼色设置

    Win10&Win8系统设置护眼色1. windows+R键调出运行窗口(或者鼠标右击开始键,选择运行)2. 在运行窗口中输入 regedit 调出注册表编辑器3. 按照如下顺序找到windo ...

  4. python6.1创建类

    class Dog(object): type1="宠物"#类变量 #初始化方法 def __init__(self,name,age,color): self.name=name ...

  5. Linux学习笔记之如何把ubuntu下的c文件共享到windows下文件夹

    1.首先可在桌面新建文件夹,或者自己任意路径文件夹都可以, 2.在Linux下点击虚拟机 点击设置 点击选项,选择共享文件夹,点击总是启用,然后添加文件夹,添加你windows下想保存的文件夹   可 ...

  6. SonarQube 自定义规则开发

    SonarQube 自定义规则开发 满足一些特定需求的时候,需要自己开发代码规则. 环境 和前文的演示环境一致. 步骤 开发步骤见 Writing Custom Java Rules 101,这是官方 ...

  7. sql server 存储过程的(包含事务)方法里面,采用游标循环,批量删除(修改)数据

    sqlserver 数据库 1.下面是完整的 在存储过程中 使用游标进行 循环删除的实例(包括存储过程中,事务的应用) 2.有问题的话,欢迎随时讨饶我,相信大家看下注释应该就能明白了,很简单的一个,小 ...

  8. Qt之先用了再说系列-定时器的用法

    Qt 定时器是一个比好用的东西,在此就地简单记录一下使用的方式: 1.首先包含头文件 #include <QTimer> 2.具体用法有几种,我就写其中2种吧 1>执行一次 这种方式 ...

  9. Django-model模型中Field属性类别及选项

    参考:[Django官方文档] Django所使用模型中一些属性类别及选项(Field and Options) 1. Models Field 各种类型分别对应数据库中的各种类型,这是Django对 ...

  10. C#LeetCode刷题之#414-第三大的数(Third Maximum Number)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3710 访问. 给定一个非空数组,返回此数组中第三大的数.如果不存 ...