游客发表
小米手机出bug的小米时候,系统自带的何抓日志抓取功能其实比很多人想象中好用得多。别急着root或者刷机,取日MIUI里藏着一个专门干这活的小米开关,只是何抓藏得有点深。
打开“设置”滑到最底下,取日进“我的小米设备”,再点“全部参数与信息”,何抓连续戳“MIUI版本”那行七八下,取日屏幕会弹个“已进入开发者模式”的小米提示。这招老用户都熟,何抓但接下来才是取日关键——退回设置主页面,找到“更多设置”,小米最底下多了个“开发者选项”入口。何抓点进去,取日往下翻,有个叫“日志记录缓冲区大小”的选项,默认可能是关闭或很小,直接拉到最大,4MB或者更高。
调完这个还不够。真正抓bug得靠组合键。在开发者选项里找到“高级功能”,里面有个“日志抓取”的开关,把它打开。之后遇到bug,比如某个应用闪退或者系统卡死,别急着重启,按住音量下加电源键三秒,手机会震动一下,接着屏幕右下角会浮出一个“日志已保存”的小气泡。日志文件会存在内部存储的“MIUI/debug_log”文件夹里,用文件管理器就能翻出来。
这里有个坑得提醒你。小米的日志抓取默认只保留内核和系统运行的关键信息,第三方应用自己的崩溃记录不一定包含在内。所以如果bug是某个特定app引起的,最好先去那个app的“设置-应用管理”里,看看有没有单独的“清除数据”或“查看日志”选项。有些应用会在自己的目录下写log,比如微信的“tencent/MicroMsg/xlog”文件夹,那里面全是加密的日志文件,得配合对应工具才能解。
抓完日志别急着丢给官方。自己先瞄一眼,重点看“AndroidRuntime”或者“FATAL EXCEPTION”开头的段落,那通常是崩溃的直接原因。如果看到一堆“OutOfMemoryError”,那八成是内存泄漏,跟某个页面没释放资源有关。要是日志里全是“ANR in com.xxx”,那就是主线程被卡死超过五秒,得查那个时间点前后有什么耗时操作。
有个小技巧,抓日志前先在开发者选项里打开“显示CPU使用情况”和“指针位置”,屏幕顶部会实时显示系统负载和触摸轨迹。这样bug复现时,操作路径和性能波动能同步被记录进日志,排查起来省不少事。我自己有一次抓系统桌面闪退,光看日志死活定位不到原因,后来开着指针位置复现,才发现是快速滑动时触发了某个动画的边界条件崩溃。
最后啰嗦一句,日志文件会越攒越多,占存储空间。抓完有用的记得定期清理,别等到手机提示存储不足才想起来。MIUI自带的“安全中心”里能一键清理,但那个debug_log文件夹得手动删——路径就在根目录下,别删错了。
友情链接