经理:Tank,我需要抓取应用的日志
我:你直接用AS的Logcat看不行吗?
经理:我是想在APP中直接查看日志,就像Logcat那样
我:明白了,就是做一个Logcat的功能呗
经理:是的
Okay,需求明朗了~搞一个APP来实时打印日志
首先,我们要知道如何获取日志呢?
if(你了解adb shell){
你会知道logcat这条命令;
}else{
我告诉你,我们可以通过这条命令打印日志;
}
我们先通过cmd执行下logcat看下效果:
从上面的效果图来看的话,我们是可以通过该指令实现想要的功能的,但是需要考虑几个问题:
1,频繁的读写,会不会导致ANR?
2,如此多的数据,如何展示?String会不会越界
针对第一个问题,我们可以创建一个子线程来进行日志的实时监听,然后通过Handler通知主线程进行日志的展示,为了方便大家熟悉Handler的原理,特附上链接
第二个问题,如果用一个String来保存所有的日志,百分百是会出现越界问题的。那么怎么解决?我选择用ScrollVie