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
相关推荐
hai_android2 小时前
把 Android App 打包成系统应用(System App)
android·kotlin·android jetpack
JMchen2 小时前
【Jetpack 内核实战 01】开篇:Jetpack 组件全家桶核心逻辑与专栏完整规划
android·kotlin·android jetpack
骑着蜗牛撵大象3274 小时前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信
WJ.Polar4 小时前
Java封装、继承、多态
java·开发语言
摇滚侠4 小时前
Java 中如何表示负数,有符号和无符号的区别,补码的计算规则,char byte short int long 的范围
java·开发语言
hunterandroid4 小时前
Retrofit 网络请求的异常处理与重试策略实战
android
weixin_307779135 小时前
C++代码实现MATLAB中的fitrtree函数功能
开发语言·c++·算法·matlab
sejinan5 小时前
极致轻量与秒级起播:NativeWasmTv 开源硬核技术解析与升级版体验
android·开源·webview·tv
爱读书的小胖5 小时前
Codewars:Rot13(C)解题分析
c语言·开发语言
小羊没烦恼!5 小时前
Ajax与JSON的一些总结
android·java·前端·数据库·mysql·算法·okhttp