android logcat日志截断解决方案

android logcat在打印日志时如果日志过长会将日志截断。网上搜索处理这个问题的常规做法是设置一个长度阀值,如果日志长度超过这个阀值就将日志截断,分成多条日志来打印。

这种方案带来的问题是日志会变得很不易读,最近被这个问题搞得很烦,写了一个工具来解决该问题。方案思路:

  1. android端启动一个http server + 一个websocket server
  2. 在与android设备同局域网下的浏览器上启动一个websocket client来跟android端的server通信
  3. 在打印log时,由server通知client在网页端展示

方案地址:
https://github.com/glzlaohuai/WebLogCat

Demo下载

具体使用方法:

添加依赖

implementation 'com.koushikdutta.async:androidasync:2.+'
implementation 'com.imob:weblogcat:0.0.1'

初始化

WebLogCat.init(context);

查看日志

打开浏览器访问地址:http://<你的安卓设备的ip地址>:8088,在初始化完成时该lib也会打印查看日志的地址,你可以根据tag:IMOB-WebLogCat来过滤日志以查看该地址

打印日志

WebLogCat.log(tag,msg,logLevel,throwable);

示例截图

screenshot.png

你可能感兴趣的:(android logcat日志截断解决方案)