Android 通过logcat查看crash 或者anr日志

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 通过logcat查看crash 或者anr日志相关的知识,希望对你有一定的参考价值。

参考技术A android APP的测试过程中经常遇到crash和anr,开发人员习惯通过eclipse或者eclipse的ddms组件进行捕抓日志,测试人员常通过在dos窗口下adb命令的方式来抓取日志。前者的缺点是启动时非常耗时,后者呢则每次都要写命令也比较麻烦(需要截图时也存在这个问题)。

crash可以在日志中搜:FATAL 关键词
anr搜:anr in关键词

Android 巧用 adb logcat 工具查看丢失的 app crash 数据

Android App 运营期间发生崩溃是在所难免的事情,问题在于如何获取崩溃日志,进而分析解决问题。

开发调试阶段可以通过 Android Studio 的 Logcat 窗口获取必现的 crash 日志信息,如果不是必现的,或者不能通过开发工具显示的,怎么办呢?可以尝试 dump 操作,通过 adb logcat 命令获取手机设备本地的 log 信息。

App 运行期间的系统日志、错误堆栈和应用本身通过 Log 类打印出的消息,都可以通过 adb logcat 命令导出到电脑上查看,命令格式类似:

./adb logcat > /Users/ccsa/logcat.txt

箭头(>)符号表示导出,后面路径表示导出到电脑上的文件,没有的话会自动创建。

运行这个命令时不会自动退出,Linux 环境可以通过 control + C 快捷键推出当前命令。

值得注意的是,logcat 日志缓冲区是有大小限制的,可以通过 -g 参数查看:

./adb logcat -g

因此,如果可以重复操作稳定复现 crash 信息的话,可以在 crash 复现操作执行前,通过 -c 命令清空日志缓冲区:

./adb logcat -c

Logcat 命令行工具还有很多参数可以设置,甚至可以直接运行 adb logcat 命令通过命令行工具查看实时 log 信息。更多设置参考官网文档介绍:

https://developer.android.com/studio/command-line/logcat?hl=zh-cn

推荐阅读:如何像 IDE 一样浏览 GitHub 网站的项目?
又发现一个挣零花钱的方式简直是搜索引擎界的新起之秀,你值得拥有!

长按识别二维码,关注我,一名爱叨叨的程序员

以上是关于Android 通过logcat查看crash 或者anr日志的主要内容,如果未能解决你的问题,请参考以下文章

Android程序crash处理

Android怎样捕获应用的crash信息

Android NDK开发Crash错误定位

Android logcat使用总结

Android native crash解析

Android中如何通过logcat追踪生命周期事件?