已确认并处理。
结论
代码(Unity 端 time 改为操作间隔)本身是正确的,问题在于 Unity 没有重新编译,你测试时跑的还是 19:01 的旧程序集(仍是「按压时长」语义)。
你需要做的(关键一步)
让 Unity 重新编译,三选一:
- 切回 Unity 编辑器窗口(失去焦点再获得焦点,通常会触发编译)
- Unity 菜单 Assets → Refresh(快捷键
Cmd+R)
- 在 Project 面板里右键
UAutoRuner_UGUI.cs → Reimport
编译完成后(右下角转圈结束),重新进入 Play 模式重新录制即可。
验证
重编译后,录制脚本里的 time.sleep(...) 应能反映真实等待间隔,例如你停顿 3 秒再操作:
time.sleep(0.07) # 第一次操作前的间隔
udriver.find_object(By.PATH,"//Canvas//StartButton").tap()
time.sleep(3.12) # ← 真实等待 3 秒
udriver.swipe_direction("right")
如果重编译后延时仍然全是 ~0.1s,那才说明还有逻辑问题,到时候再贴新录制结果,我继续排查。
补充:symlink 是这个坑的根源——Unity 的文件监听对「符号链接目标」的改动不敏感,所以以后每次改 UAutoRuner_UGUI.cs 源码,都记得手动让 Unity Refresh 一次。另外 make 产出的 UAutoSDK.dll 是给真机/打包用的,编辑器内录制用的是 Unity 直接编译的源码,两者互不影响。
已确认并处理。
结论
代码(Unity 端
time改为操作间隔)本身是正确的,问题在于 Unity 没有重新编译,你测试时跑的还是 19:01 的旧程序集(仍是「按压时长」语义)。你需要做的(关键一步)
让 Unity 重新编译,三选一:
Cmd+R)UAutoRuner_UGUI.cs→ Reimport编译完成后(右下角转圈结束),重新进入 Play 模式重新录制即可。
验证
重编译后,录制脚本里的
time.sleep(...)应能反映真实等待间隔,例如你停顿 3 秒再操作:如果重编译后延时仍然全是 ~0.1s,那才说明还有逻辑问题,到时候再贴新录制结果,我继续排查。