您的位置:首页 > 移动开发 > Android开发

android上如何实现后台日志记录并写文件到sd卡

2012-09-06 00:08 597 查看

原因分析

什么时候需要将我们的日志写到文件,并存储起来查看呢,我总结一下大概有几种情况:

1.debug alarm manager 启动的service,你想要知道是否每一次service的执行都正常,一切都是按照你所想的;

2.一些重要的信息,需要保存起来做分析或者需要上传到服务器做分析的;

3.开发期间,了解各个主要是网络接口的工作状态,执行效率(每个接口的执行时间)等等;

过程分析

1、下载

http://code.google.com/p/microlog4android/downloads/list 下载microlog4android-1.0.0.jar和microlog.properties文件(注意:

下载下来的microlog.properties是microlog.properties.txt,修改一下后缀名)

2、建立使用logger对象

private static final Logger logger = LoggerFactory.getLogger(main.class);

3、在程序的第activit或者service的oncreate方法里初始化方法

PropertyConfigurator.getConfigurator(this).configure();

4、把microlog.properties文件放到assets文件夹里

注意:assets文件夹是与res文件夹平级的

然后更改microlog.properties文件为以下内容:

microlog.level=DEBUG

microlog.appender=LogCatAppender;FileAppender

microlog.formatter=PatternFormatter

microlog.formatter.PatternFormatter.pattern=%c [%P] %m %T

5、写日志记录

logger.debug("my debug");

6、在AndroidManifest.xml 添加写sd卡的权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

启动程序,然后到SD卡根目录,可以发现有一个microlog.txt的文件,里面就是我们记录的日志了。

补充说明(实现循环滚动的日志,也就是让日志不断的追加在上一条后面)

1.上面的日志在多地方调用,有时候可能会发现只保存了一条记录,每次后面的日志都覆盖了前面的日志,所以我们需要增加点额外代码;

2.在第三步后面: final FileAppender fa = logger.getAppender(1); fa.setAppend(true); ok, 到此大功告成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: