android开发:把指定的日志输出到指定的文件

近期在做一个接入了第三方sdk的项目,其中涉及到蓝牙连接。蓝牙连接的时候,LogCat中大量输出了无用的BluetoothStack日志,输出的都是一个对象的哈希值。将有用的log瞬间冲掉了。因此做了以下方式来查看需要的日志。方法笨了点,不过,解决问题为先。而且这个方式还有一个用途,记完错左过程再说。


首先,需要下载相关jar包两个:

        android-logging-log4j-1.0.3.jar

log4j-1.2.17.jar

导入到libs目录下面就可以使用了。

由于使用方法比较简单,我直接把官方的例子写下:

初始化:

import java.io.File;
import org.apache.log4j.Level;
import android.os.Environment;
import de.mindpipe.android.logging.log4j.LogConfigurator;
/**
 * Call {@link #configure()}} from your application's activity.
 */
public class ConfigureLog4J {
    public static void configure() {
        final LogConfigurator logConfigurator = new LogConfigurator();
		
        logConfigurator.setFileName(Environment.getExternalStorageDirectory() + File.separator + "myapp.log");
        logConfigurator.setRootLevel(Level.DEBUG);
        // Set log level of a specific logger
        logConfigurator.setLevel("org.apache", Level.ERROR);
        logConfigurator.configure();
    }
}

使用:

import org.apache.log4j.Logger;

public class ExampleLog4J {
    private final Logger log = Logger.getLogger(ExampleLog4J.class);

    public void myMethod() {
        log.info("This message should be seen in log file and logcat");
    }
}


后记:

有个客户使用我们的app时候崩溃了,但是描述的很模糊,我们又没有用户的那款手机,因此我尝试使用这个方法,在我认为出现问题的地方,使用trycatch抓获异常,然后将日志写入文件,让用户发送文件回来。不过这个方法并不好,我最终使用了另一个方法来解决的。


为了保存jar包,上传到csdn的网盘,以备后用。

两个jar包的csdn下载地址


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值