使用 adb 查看当前界面情况(结合正则表达式命令grep), 分析界面启动问题。
0. grep常用选项:
-E :开启扩展(Extend)的正则表达式。
-i :忽略大小写(ignore case)。
-v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。
-n :显示行号
-w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
-c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
-o :只显示被模式匹配到的字符串。
--color :将匹配到的内容以颜色高亮显示。
-A n:显示匹配到的字符串所在的行及其后n行,after
-B n:显示匹配到的字符串所在的行及其前n行,before
-C n:显示匹配到的字符串所在的行及其前后各n行,context
cmd 清屏命令: cls
1. window displays 当前获得焦点的Activity或者APP
adb shell
dumpsys window displays | grep mCurrentFocus
dumpsys window displays | grep mFocusedApp
adb shell
dumpsys window displays | grep -E 'mCurrentFocus|mFocusedApp'
2. input 当前输入信息
adb shell
dumpsys input | grep focus -i -A 2
3. activity
过滤以名为 withactivity 的activity对象,
包含启动该activity的一些参数信息(intent(action/flag/ cmp/extras/taskid))
(1) dumpsys activity | grep withactivity -i
(2) dumpsys activity | grep chooseractivity -i -C 10 -n
(3) dumpsys activity activities | grep -E 'dumpsys activity activities' -i -A 100 -n
以下开始的100行(顶部activity显示在前面)
1:ACTIVITY MANAGER ACTIVITIES (dumpsys activity activities)
2-Display #0 (activities from top to bottom):
3- RootTask #36: type=standard mode=fullscreen