gpt4 book ai didi

android - 如何在android中通过adb检测屏幕变化

转载 作者:太空宇宙 更新时间:2023-11-04 05:37:58 25 4
gpt4 key购买 nike

我正在寻找一种方法来检测屏幕是否从以前的屏幕发生变化..我的意思是:我的“屏幕 A”上满是按钮 - 我试图按下所有按钮,但只有其中一个会带我到“屏幕 B”..

我正在寻找一种可以遍历所有按钮并在到达“屏幕 B”后中断的方法 - 通过 adb

我尝试从上一个屏幕查看 uiautomator dump 并在每次单击按钮后获取"new"屏幕的 UI 层次结构并进行比较 - 但结果不成功。

有什么想法吗?谢谢

最佳答案

我假设您已经了解了 input tap X Yadb 命令。

我建议在 input tap 之前和之后拉动 screencap 1 秒,然后比较屏幕截图以查看屏幕是否发生变化。 screencap 的代码如下所示:

adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png
adb shell rm /sdcard/screen.png

有几种方法可以比较图像。由于您使用的是 Python,因此您可以轻松比较图像内的像素,但我会使用的另一种方法是比较两个图像的确切文件大小,同一屏幕的 .jpg 屏幕截图将具有完全相同的文件大小,除非右上角的时钟更新或其他通知滚动。如果两个窗口的屏幕截图之间存在重大差异,您可以使用简单的大于/小于 if 语句来确定。

希望对您有所帮助,

关于android - 如何在android中通过adb检测屏幕变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35021043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com