dumpsys window | grep display | grep 'imeInputTarget' | cut -d'#' -f2 | awk '{print $1}' | sed 's/#/ /' 0 2 我是说这个只有0 和2 我还想有包名
时间: 2023-10-23 09:11:49 浏览: 38
如果你想要获取当前输入法窗口所在应用的包名,可以使用以下命令:
```
adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'
```
这个命令会输出当前焦点窗口的信息,其中包括当前焦点窗口所在应用的包名。你可以将它与之前的命令组合使用,获取完整的信息,例如:
```
adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp' && adb shell dumpsys window | grep display | grep 'imeInputTarget' | cut -d'#' -f2 | awk '{print $1}' | sed 's/#/ /'
```
这个命令会先输出当前焦点窗口所在应用的信息,然后再输出当前输入法窗口的 ID。你可以根据需要对输出结果进行处理,提取出包名和输入法窗口 ID。
相关问题
dumpsys window | grep display | grep 'imeInputTarget' | cut -d'#' -f2 | awk '{print $1}' | sed 's/#/ /' 0 2
这是一个用于获取当前输入法窗口 ID 的命令,具体来说:
- dumpsys window:输出窗口系统的信息
- grep display:筛选包含 display 的行
- grep 'imeInputTarget':筛选包含 imeInputTarget 的行,这行信息包含了当前输入法窗口的 ID
- cut -d'#' -f2:按 # 分割,取第二个字段,即输入法窗口的 ID
- awk '{print $1}':输出第一个字段,即输入法窗口的 ID
- sed 's/#/ /':将 # 替换为空格,这样输出的就是纯数字的输入法窗口 ID。
如果你想了解更多关于 Android 系统的命令,请参考 Android 开发者文档中的相关章节。
dumpsys window | grep display | grep 'imeInputTarget' | cut -d'#' -f2 | awk '{print $1}' && dumpsys window | grep display | grep 'imeInputTarget' | cut -d'#' -f2 | awk '{print $NF}' | cut -d'}' -f1 0 2 com.ktcp.video/com.ktcp.video.activity.ScreenSaverActivity com.tencent.start.tv/com.tencent.start.ui.SplashActivity
这个命令输出了当前输入法窗口所在应用的包名和窗口信息。其中,`com.ktcp.video/com.ktcp.video.activity.ScreenSaverActivity` 表示第一个应用程序的栈顶 Activity 是 `ScreenSaverActivity`,而 `com.tencent.start.tv/com.tencent.start.ui.SplashActivity` 则表示第二个应用程序的栈顶 Activity 是 `SplashActivity`。
如果你只想要包名和栈顶 Activity 的信息,可以使用以下命令:
```
adb shell dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp' && adb shell dumpsys activity top | grep 'ACTIVITY' | head -n 2 | awk -F ' ' '{print $4}'
```
这个命令会先输出当前焦点窗口所在应用的信息,然后输出前两个 Activity 的包名和类名,即第一个应用程序的栈顶 Activity 和第二个应用程序的栈顶 Activity。你可以根据需要对输出结果进行处理,提取出包名和栈顶 Activity 的信息。