GAutomator icon indicating copy to clipboard operation
GAutomator copied to clipboard

click 失效

Open zqlangzi opened this issue 9 years ago • 22 comments

1 2 如果将raise_equip_level.py 21行注释掉,开启22行,手机画面停在 interaction 该click是有效的, 请问 my_app.apk 为何没有期待的效果(在指定element点击了一下)?

zqlangzi avatar Dec 12 '16 06:12 zqlangzi

是否是说,你的apk点击无效,我提供的wetest_demo.apk点击是有效的?

wukenaihe avatar Dec 12 '16 06:12 wukenaihe

是的, 就是这个意思。

zqlangzi avatar Dec 12 '16 06:12 zqlangzi

你们是否方便提供个 wetest_demo.apk 对应的 unity 项目?

zqlangzi avatar Dec 12 '16 06:12 zqlangzi

无效的情况在腾讯内部,还没有出现过。在腾讯外部,已经有2个游戏出现该问题。因为无法拿到具体的游戏,所以没法定位问题。如果,对java部分有改写,极有出现该错误。

我们目前处理点击的方式是,直接调用游戏view的onTouchEvent完成Touch事件输入。

1、及时修复为使用uiautomator进行点击 2、后期大版本,准备将uiautomator、touch、截图全部统一为一个service。

请发一份邮件到[email protected],我把demo游戏发给你。

wukenaihe avatar Dec 12 '16 06:12 wukenaihe

邮件已发

78cffbc8-c08b-11e6-9b92-2d057c9a3c83

疑问:如图1 Canvas/Panel/ 增加一kftest GameObject,打包后手机上看不到。 但调用 e = engine.find_element("/Canvas/Panel/kftest") engine.click(e) 执行效果如图2所示。

zqlangzi avatar Dec 12 '16 06:12 zqlangzi

请用GAutomatorView或者UnityEditor确认文本框的大小和范围,你居中显示的。感觉你的文本框的范围应该不小。

click是点击,控件的中心点。click是先获取控件的位置和大小,然后计算出中心点,并进行点击

wukenaihe avatar Dec 12 '16 11:12 wukenaihe

我发一个我们的demo给您,您能帮忙看看click 是否有效不? cell = engine.find_element("/Canvas/Image1") engine.click(cell) image

zqlangzi avatar Dec 14 '16 05:12 zqlangzi

会点对应的位置,只是本身点了就是无效果的。人去点也一样

wukenaihe avatar Dec 14 '16 12:12 wukenaihe

你们换个手机试试, 我这边试了2个手机,都是有效果的。请看邮件中的视频,效果就是简单的文字变化。

zqlangzi avatar Dec 15 '16 02:12 zqlangzi

感谢zqlangzi问题已经定位到。GAutomator现在进行事件输入是通过反射的方式,调用com.unity.play.UnityPlay的onTouchEvent方法。反射的缺陷就是不稳定。

一直以来,事件输入这块我们都想进行重构。后面应该会修改为uiautomator的输入或者用wetest平台更加底层的touch输入,这样对游戏的性能影响更低。

之所以一直没有下定决定修改是因为,用uiautomator的方式可能会对现在的输入接口的含义发生一定的变化。如果是用更加底层的方式输入,工作量相对比较大

wukenaihe avatar Dec 15 '16 08:12 wukenaihe

同样感谢wukenaihe 高效的反馈,问题已经解决了。

zqlangzi avatar Dec 16 '16 09:12 zqlangzi

可以的,我回到公司就发给你

wukenaihe avatar Feb 14 '17 02:02 wukenaihe

@skyseraph 你使用的是最新版本的吗?2.3.1的,我之前修复了一个版本,就是修复点击失效的

wukenaihe avatar Feb 14 '17 03:02 wukenaihe

@wukenaihe 抱歉没来得及回复,好像不是最新版,我pull最新代码试下。tks~

skyseraph avatar Feb 20 '17 09:02 skyseraph

hi~最近我对公司的APP试用了一下,同样click失效,请问是否跟unity版本有关系? screen_shot_click() 和engine.click()都是无效的 image

XinmingYe avatar Aug 01 '17 10:08 XinmingYe

@XinmingYe 只支持unity,不支持app的。如果仅仅是app,可以使用appium或者uiautomator

wukenaihe avatar Aug 05 '17 07:08 wukenaihe

@wukenaihe 额 不好意思 没说清楚 是手游 不是APP 我混淆一谈了

XinmingYe avatar Aug 05 '17 07:08 XinmingYe

@XinmingYe 请确认检查下SDK中的jar是否已经集成到游戏中

wukenaihe avatar Aug 05 '17 09:08 wukenaihe

已经集成了的 Gautomatorview可以查看元素 游戏拉起也有红字提示

XinmingYe avatar Aug 05 '17 09:08 XinmingYe

@XinmingYe 你们游戏unity什么版本的?java层有没有做对应的修改?

wukenaihe avatar Aug 07 '17 01:08 wukenaihe

@wukenaihe java层没有做修改,unity版本5.5.2f1

XinmingYe avatar Aug 08 '17 05:08 XinmingYe

@wukenaihe 问题已定位到 谢谢解答

XinmingYe avatar Aug 23 '17 07:08 XinmingYe