美文网首页
Android App崩溃crash后,错误日志被覆盖

Android App崩溃crash后,错误日志被覆盖

作者: 地球是猿的 | 来源:发表于2018-10-10 18:43 被阅读334次

    场景描述

    1. 调试app在使用中出现崩溃。
    2. 当我们把手机连接电脑,在AS的logcat中查看App的运行日志的时候,错误日志在logcat中一闪而过,很快就会被后面的新日志给覆盖掉调。
    3. 并不是所有手机都这样,只有部分手机。如nexus、华为等。

    解决办法

    方法一

    1. 将logcat过滤器从show only selected application改为No filters。
    2. 将log级别改为error。

    方法二

    换一个崩溃后不会重启应用的系统。

    方法三

    使用adb logcat > 1111.txt命令把错误日志导出来,然后自己去找对应的错误日志。

    原因分析

    为什么有的手机不这样,而有的手机会这样?

    某些系统在APP crash之后会自动重启,导致新的日志会覆盖掉以前的日志。而有些系统在crash之后不重启,就不会出现错误日志被覆盖的情况。

    为什么奔溃前的错误日志会被覆盖掉?

    1. 在logcat工具栏有下面几个过滤选项:设备、进程、log级别(i、e、v等)、搜索关键词、过滤器。
    2. 正常使用的时候,我们会设备、自己的进程。然后在过滤器上选择show only selected application。这样就能只显示我们自己app的日志了。
    3. 每一个application都是一个进程,对应一个进程号。一个APP在崩溃前和崩溃重启后,是两个进程。
    4. 所当app崩溃并自动重启后,logcat过滤器显示的是重启后新进程的日志。而我们希望看到的错误日志是之前进程的,所以不会显示。

    相关文章

      网友评论

          本文标题:Android App崩溃crash后,错误日志被覆盖

          本文链接:https://www.haomeiwen.com/subject/ozdmaftx.html