Appium appium 新手请教一个问题

dy20082250 · 2017年11月28日 · 最后由 dy20082250 回复于 2017年11月29日 · 80 次阅读

在使用 appium 的 java-client 5.0.4 版本,然后发现

driver.swipe() 这个函数已经被废弃了

但是我刚刚启动 app 的时候,有三页的启动动画页面

我确实是需要类似于 swipe 的功能,请教各位朋友

java-client 5.0.4 是提供的什么解决方法,我查了好久的 api 文档,都没找到合适的

另外,授人鱼不如授之以渔,能说一下遇到类似我这种情况的话,该怎么快速的查找文档信息吗?

共收到 16 条回复 时间 点赞

hello 有人吗?

自己刷楼,等待

ori 起始坐标 tar 目标坐标
new TouchAction(driver).press(oriX, oriY).waitAction(Duration.ofMillis(500)).moveTo(tarX-oriX, tarY-oriY).release().perform();

风暴戒酒 回复

天啊,谢谢!我这就去试试

github 上有更新说明和接口文档可以看,可以在 issue 里搜问题

dyak 回复

http://appium.github.io/java-client/

找到了这个,只是很多东西还需要慢慢熟悉,谢谢

风暴戒酒 回复

方法我试过了,可行

不过目前只能翻过第一页,我使用循环的方式进行翻页,后面的三页翻不动

我还在尝试其他的组织这个动作的方式。

int i =1;
for(;i<5;i++) {
new TouchAction(driver).press(1350, 950).waitAction(Duration.ofMillis(1000)).moveTo(-1200, 0).perform();
Thread.sleep(2000);
}

谢谢,总算是有些进展了

最新的好像 是 换成 TouchAction 方式了

斯拉 回复

是的,前面有个前辈给了我示例

我也遇到了一样的问题,现在用 TouchAction,多点操作如放大缩小可以用 MultiTouchAction,翻不了页看看坐标有没有超出范围。 http://blog.csdn.net/kbkaaa/article/details/78513383

xdefine 回复

谢谢,正在努力做这一部分,希望以后能多多交流

dy20082250 回复

不客气,互相学习。还有你的 moveTo 后面没 release,不会有问题吗?

xdefine 回复

已经出问题了

我有三个动画加载页面需要翻过去

目前我不使用 release() 可以成功一次,也就是翻一页,然后就不动了

如果我使用 release(),根本不能翻页,直接报错,说什么

An unknown server-side error occurred while processing the command. (WARNING: The server did not provide any stacktrace information)

xdefine 回复

而且因为是动画页面,我只能使用坐标的方式

没办法尝试使用其他的重载函数

我真的是不明白了

new TouchAction(driver).press(1300, 900).waitAction(Duration.ofMillis(800)).moveTo(-1200, 0).perform();

可以翻动第一页

但是不能使用 release() 函数

然后使用同样的方式去翻第二页的时候,页面没有任何反应

new TouchAction(driver).press(1300, 1700).waitAction(Duration.ofMillis(800)).moveTo(100, 1700).release().perform();
hread.sleep(2000);

我已经突破了这个函数

请注意,moveTo 函数中是相对于左上角原点的坐标值,不是相对于初始点的相对值

dy20082250 关闭了讨论 11月29日 10:45
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册