1 Debugging
当遇到UI冻结且ADB仍在响应时,请在设备冻结时收集以下日志:
adb shell top -t -n 1 > top.txt
adb shell cat /proc/meminfo > meminfo.txt
adb shell bugreport > bugreport.txt
adb pull /data/tombstones
adb pull /data/anr
如果ADB不能工作,通常问题出在内核上。 如果是这样,捕获内存转储并从内核端分析它。 当调试一个特定的进程时,通过发送以下信号来检索它的堆栈跟踪:
Create traces
adb shell kill -3 <process_pid>
Create tombstones
adb shell kill -6 <process_pid>
adb shell debuggerd <process_pid>
在设备上,需注意以下事项:
UI卡在哪个屏幕上(例如,主屏幕,应用程序屏幕等)?
检查以下内容:
a.执行命令"adb shell getevent"。
b.触摸触摸屏,观察“adb shell getevent”的输出。 触摸事件是否被打印在屏幕上?
c.按下电源和音量上/下键。 屏幕上是否打印了按钮按压事件?
d.此外,音量上/下按钮按下时通常会产生声音效果。 当按钮被按下时,这个声音存在吗?
检查是否有一个实际的UI冻结,或者如果UI只是没有响应触摸输入。
a.执行命令"