adb shell dumpsys窗口输出描述

我正在使用appuim进行Android设备和java代码间的交互.我遇到问题,在按下Home按钮后某些设备(包括模拟器)上,appium返回不正确的当前活动(它返回当前必须最小化的previuos活动).我发现appium使用dumpsys window windows获取mFocusedApp值来获取当前的应用程序.我阅读了有关获取Android当前活动的another answers,并且大多数建议使用:

adb shell "dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'"

那是问题的根源,因为按下Home按钮后mCurrentFocus和mFocusedApp链接到不同的活动.但我找不到任何解释这些领域之间的区别.为什么appuim只使用mFocusedApp呢?

最佳答案:

mCurrentFocus和mFocusedApp之间差异的解释盯着你:

$dumpsys window windows | grep -E 'mCurrentFocus|mFocusedApp'
mCurrentFocus=Window{X uX package/.activity}
mFocusedApp=AppWindowToken{X token=Token{X ActivityRecord{X uX package/.activity tX}}}

mCurrentFocus是一个Window(只是一个可能有或没有与之关联的ActivityRecord的视图)

mFocusedApp是一个AppWindowToken(一个应用程序令牌,它总是有一个ActivityRecord)

因此,当输入焦点切换到具有活动的视图时 – mCurrentFocus和mFocusedApp都会显示相同的活动.但有时焦点切换到没有活动的视图(如systemUI的部分等) – 然后mCurrentFocus将显示该视图,但mFocusedApp仍将显示在最后一次切换之前具有焦点的应用的ActivityRecord.

小编说

以上是编程之家为你收集整理的android – adb shell dumpsys窗口输出描述全部内容。

如果觉得编程之家网站内容还不错,欢迎将编程之家推荐给好友。

原文地址:https://codeday.me/bug/20190516/1114881.html

转自:android – adb shell dumpsys窗口输出描述 - 编程之家

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值