如何抓取adb log(bug反馈必读)

如何抓取adb log(bug反馈必读)
0

#1

目的:用户反馈bug时提供log(日志)给开发者,方便开发者快速定位修复bug。

目录

  1. 什么是adb log
  2. 配置adb环境
  3. 抓取adb log
  4. 举例
  5. 扩展阅读

什么是 adb log?

adb 是 Android Debug Bridge(调试桥)的缩写,是一个通用命令行工具,其允许用户与连接的 Android 设备进行通信。

那 adb log 又是什么?
adb log 是使用 adb logcat 命令抓到的android系统内的日志,日志记录了 android 系统内(可记录的)发生的一切。
所以当你的应用无响应了,FC了,或者其他异常了,一般都会记录在 adb log 内。
因此查看 adb log 就可以调查系统内部发生了什么事,帮助分析问题。
但是除了adb log 系统还有其他方法记录信息,比如dumpsys, tcpdpm 等,所以并不是提供了 adb log 就提供了足够的信息供开发者分析。

配置adb 环境

adb 工具本身是在 android_sdk/platform-tools/ 目录下,但是一般非开发者的普通用户不会去下载体积较大的android_sdk,因此可以使用第三方提供的 adb 工具。
就在我编辑帖子的时候,我发现google官方提供了adb 工具的单独下载,包含adb, fastboot, systrace等,因为祖国很强大,我把adb 工具转存到某网盘上了,下载链接:https://pan.baidu.com/s/1kaLkLWIGt7BQJ2adtyclAw
下载解压到某一目录,以C:\Android\platform-tools为例,只需在系统环境变量Path的值最后增加;C:\Android\platform-tools,注意要用分号和前面的值隔开。在cmd中得到如下输出表示环境变量配置成功:
image

抓取adb log

先输入adb devices确定手机连接成功:

C:\Users\admin>adb devices
List of devices attached
ZY223K7JD5      device
  1. 使用adb logcat命令抓取log:
    C:\Users\admin>adb logcat -v time -b all > C:/文件名自取.log
  2. 复现问题
  3. Ctrl+C停止抓log命令

抓到的log存在C盘根目录,之后把log传给开发者并准确描述现象,能有效提高bug修复效率。

举例

因为我没发现我的系统有问题,这里以第三方快图为例抓一份log。
现象,使用快图浏览使用分享功能,点击分享方式列表里的“更多”的时候,快图停止运行。

C:\Users\admin>adb logcat -v time -b all > C:/motoz_quickpic_crash.log

打开log文件查看

空指针异常,导致应用crash。不过我们没有快图的源码,没法修改。

扩展阅读

待续


小米max 录屏 停止运行
zenfone2 我单位的app在别的手机都能登录,在我的zenfone2,总是提示无法更新资源,网络异常。
为什么红米4A twrp(3.2.1)更新不了每夜版
状态栏下拉磁块问题
建行手机银行无法打开
乐视max2开心消消乐频繁闪退,偶尔能打开
最近的几天的8.1有点小问题
小米5s plus 8.1通知栏数据快捷开关双卡切换bug
google nexus 6p bug 报告
小米4刷魔趣
系统界面停止运行
#2

OK👌滋磁滋磁~


#3

自带启动器,用第三方软件改壁纸时候偶尔fc,触发原因不明,正好看见这个,下次碰到截图抓log反馈去。


最新的乐视max2每夜版,经常会提示系统出现了一个错误,应用正在重启。