ADB->获取当前正在显示的Fragment和Activity的ADB命令

获取当前显示的Activity

c 复制代码
adb shell "dumpsys window | grep mCurrentFocus"
  • 指令拆解
  • adb shell:启动一个远程shell来运行设备上的命令
  • dumpsys window:获取当前窗口管理器的信息
  • |:将前一个命令的输出作为后一个命令的输入
  • grep mCurrentFocus:过滤出包含mCurrentFocus字符串的行,找到当前获取焦点的窗口,一般是前台Activity

获取添加到FragmentManager并且正在显示的Fragment

c 复制代码
adb shell "dumpsys activity top | grep '#[0-9]: ' | tail -n 1"
  • 指令拆解
  • dumpsys activity top:获取栈顶Activity的信息,会有大量信息输出,包括在Activity栈中的位置,View嵌套层级信息,已经添加的Fragment信息,例如添加的Fragment
c 复制代码
Added Fragments:
  #0: YangFragment{f6e11fe} (a7ee7769-f7ed-4abb-9859-26e195eca6d8 id=0x7f0a00d5 tag=fragment)
  • grep '#[0-9]: ':过滤已经添加的Fragment信息,Fragment信息以#0或者#数字开头
  • tail -n 1:获取已经添加Fragment列表的最后一行,也就是最顶层的Fragment,排除DialogFragment等没有添加到FragmentManger中的Fragment
相关推荐
用户2018792831677 小时前
Android黑夜白天模式切换原理分析
android
芦半山7 小时前
「幽灵调用」背后的真相:一个隐藏多年的Android原生Bug
android
卡尔特斯8 小时前
Android Kotlin 项目代理配置【详细步骤(可选)】
android·java·kotlin
ace望世界8 小时前
安卓的ViewModel
android
ace望世界8 小时前
kotlin的委托
android
CYRUS_STUDIO10 小时前
一文搞懂 Frida Stalker:对抗 OLLVM 的算法还原利器
android·逆向·llvm
zcychong11 小时前
ArrayMap、SparseArray和HashMap有什么区别?该如何选择?
android·面试
CYRUS_STUDIO11 小时前
Frida Stalker Trace 实战:指令级跟踪与寄存器变化监控全解析
android·逆向
ace望世界16 小时前
android的Parcelable
android
顾林海16 小时前
Android编译插桩之AspectJ:让代码像特工一样悄悄干活
android·面试·性能优化