UiAutomator 安卓自动化 uiautomator2 踩坑日记:double_click 未生效

wupengfeng · 2025年04月18日 · 83 次阅读

问题

安卓自动化时,对正在播放的视频双击操作,预期需要放大、缩小视频内容。实际使用 double_click,发现视频未如期放大、缩小

排查

写代码调试时 double_click 效果正常,case 在流程时 double_click 无对应效果

调试时 流程执行时
效果 double_click 正常 double_click 无效果
差异原因 driver = c driver = c.session(bundle_id)

由于流程执行时,每次流程都是重新打开 app 的,所以使用了 c.session(bundle_id) 的方式启动 app,但是"session() 会跳过部分系统级事件注入以提高速度,导致双击未被正确识别"(来自 AI)

解决方案

driver = c.session(bundle_id)
#在启动app后,重新设置一次driver
driver = c 

# 注:double_click还是不行的话,可以封装成下面内容,时间可以自行修改
# driver.long_click(position_x, position_y, 0.05)
# sleep(0.01)
# driver.long_click(position_x, position_y, 0.01)
  • ps:保险起见顺便同步一份到 ios 的 wda
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册