Log4j For Android 和LogUtil的使用

在Android开发过程中免不了添加打印日志来调试或跟踪软件,下面就简单的介绍一下Log4j For Android 这个开源的打印工具类怎么用。其实网上早已有人写过很多这样的博客了。但为了记录一下自己的开发经历,就在这里做个记录,免得以后用到又到处乱找。

1.下载Android的Log4j库
https://code.google.com/p/android-logging-log4j/downloads/list
2.下载依赖Apache的Log4j库
http://archive.apache.org/dist/logging/log4j/

找到logging-log4j-1.2.9.zip下载里面有jar包

Log4jConfigure.java

[html] view plaincopy在CODE上查看代码片派生到我的代码片
package com.example.log4j;

import java.io.File;

import org.apache.log4j.Level;
import org.apache.log4j.Logger;

import android.os.Environment;
import de.mindpipe.android.logging.log4j.LogConfigurator;

public final class Log4jConfigure
{
//=============================================
// Log4j for android 的配置初始化
// 建议放在Application的onCreate方法里
// 另外要判断手机是否有SD卡
//=============================================

private static Logger mLogger = null;  

public static void configure()  
{  
    final LogConfigurator logConfigurator = new LogConfigurator();  

    //===============================================================  
    //如果想创建的日记文件在多级目录下,要自己先创建目录,Log4j只能创建日记文件,不能创建多级目录  
    //===============================================================  

    logConfigurator.setFileName(Environment.getExternalStorageDirectory() + File.separator + "debugLog.txt");  
    logConfigurator.setRootLevel(Level.DEBUG);  //设置输出类型  
    logConfigurator.setLevel("org.apache", Level.DEBUG);  
    logConfigurator.setFilePattern("%d %-5p [%c{2}]-[%L] %m%n");  
    logConfigurator.setMaxFileSize(1024 * 1024 * 5);  
    logConfigurator.setImmediateFlush(true);  
    logConfigurator.configure();  

    mLogger = Logger.getLogger("Log4jForAndroid");  

}  

public static void debug(String str)  
{  
    mLogger.debug(str);  
}  

}

上面就是Log4jForAndroid的配置初始化类,具体怎么用就不啰嗦了,看注释
另外别忘了在AndroidManifest.xml添加上
[html] view plaincopy在CODE上查看代码片派生到我的代码片

另外还有一种打印方法
LogUtil.java
[html] view plaincopy在CODE上查看代码片派生到我的代码片
package com.example.log4j;

import android.util.Log;

public class LogUtil
{
public static final int LOG_LEVEL_NONE = 0;
public static final int LOG_LEVEL_DEBUG = 1;
public static final int LOG_LEVEL_INFO = 2;
public static final int LOG_LEVEL_WARN = 3;
public static final int LOG_LEVEL_ERROR = 4;
public static final int LOG_LEVEL_ALL = 5;

private static int mLogLevel = LOG_LEVEL_NONE;  


public static void d(String tag, String msg)  
{  
    if (getLogLevel() >= LOG_LEVEL_DEBUG)  
    {  
        Log.d(tag, msg);  
    }  
}  


public static void i(String tag, String msg)  
{  
    if (getLogLevel() >= LOG_LEVEL_INFO)  
    {  
        Log.i(tag, msg);  
    }  
}  


public static void w(String tag, String msg)  
{  
    if (getLogLevel() >= LOG_LEVEL_WARN)  
    {  
        Log.w(tag, msg);  
    }  
}  


public static void e(String tag, String msg)  
{  
    if (getLogLevel() >= LOG_LEVEL_ERROR)  
    {  
        Log.e(tag, msg);  
    }  
}  


public static void v(String tag, String msg)  
{  
    if (getLogLevel() >= LOG_LEVEL_ALL)  
    {  
        Log.v(tag, msg);  
    }  
}  



public static int getLogLevel()  
{  
    return mLogLevel;  
}  




public static void setLogLevel(int level)  
{  
    LogUtil.mLogLevel = level;  
}  

}

上面代码是在gitHub上别人的源码中找到的,地址我忘了,使用的时候先调用setLogLevel初始化
另外还有一个也是在gitHub上的https://github.com/snowdream/android-log

转载请注明本文出自卡卡宇科的博客(http://blog.csdn.net/hanyujianren/article/details/21821879

代码下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值