前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android 专用的日志封装库

Android 专用的日志封装库

作者头像
用户3596197
发布2018-10-15 12:33:24
9580
发布2018-10-15 12:33:24
举报
文章被收录于专栏:空帆船w

俗话说,要想程序不出 Bug, 那就一行代码也不写。

所以在程序开发或者上线后如果出现了 Bug,能够及时查看日志,对修复 Bug 非常有帮助。

目前最为流行的本地日志框架应该是 orhanobut 的 Logger 库,功能很强大而且打印出来的日志非常好看。网络日志这块应该是 square 的 okhttp-logging-interceptor 库。

于是我便对这两种框架进行了封装,作为日常日志工具。这里推荐给大家使用。

支持以下功能

  • Logcat 后台打印好看整洁的日志。
  • 应用崩溃日志和 error 级别日志自动保存至本地文件。
  • Logcat 后台打印 Http 日志,屏蔽了文件流打印乱码。

使用方法

1、引入依赖

代码语言:javascript
复制
implementation 'com.wuzy:logger:1.0.0'

2、在 Application 中初始化:

代码语言:javascript
复制
L.init(tag, isLoggable, packageName, appName);

其中 tag为日志标识, isLoggable 是否支持打印后台日志, packageName 为包名, appName 为应用名称。

应用崩溃日志和 error 级别日志会自动保存至内部存储路径 Android/data/packageName/log/ 路径下。

3、打印不同级别日志:

代码语言:javascript
复制
L.d("message1");

L.w("message2");

L.i("message3");

L.json("{ \"key\": 3, \"value\": something}");

Map<String, String> map = new HashMap<>();
map.put("key", "value");
map.put("key1", "value2");

L.d(map);

L.e(new Throwable("error"));

4、打印 OKHttp 网络日志:

代码语言:javascript
复制
HttpLogInterceptor logger = new HttpLogInterceptor();
logger.setLevel(HttpLogInterceptor.Level.BODY);
OkHttpClient okHttpClient = new OkHttpClient.Builder()
    .addInterceptor(logger)
    .build();

如果在使用的过程中出现问题,大家可以去 GitHub(https://github.com/zywudev/Logger)提 Issues,也可以自行修改。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-07-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 空帆船w 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 支持以下功能
  • 使用方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档