Java 如何使用坐标和appium滚动
我正在尝试使用下面的方法在本地android应用程序中滚动Java 如何使用坐标和appium滚动,java,android,selenium,automation,appium,Java,Android,Selenium,Automation,Appium,我正在尝试使用下面的方法在本地android应用程序中滚动 Dimension size = driver.manage().window().getSize(); int starty = (int) (size.height * 0.80); int endy = (int) (size.height * 0.20); int startx = size.width / 2; driver.swipe(startx, starty, startx, endy, 3000); Thread.
Dimension size = driver.manage().window().getSize();
int starty = (int) (size.height * 0.80);
int endy = (int) (size.height * 0.20);
int startx = size.width / 2;
driver.swipe(startx, starty, startx, endy, 3000);
Thread.sleep(2000);
但是在driver.swipe
时,它会给我一个错误
类型AndroidDriver的方法swipe(int,int,int,int,int,int)未定义
有人能帮我修一下吗?我一直在寻找解决方案,但运气不佳。您可以使用
触摸操作。轻扫:
TouchAction action = new TouchAction(driver);
action.press(x, y).moveTo(x, y).release().perform();
您还可以使用PointOption
实现xy
,如下所示:
。按(new PointOption()。带坐标(x,y))
或
。按(点选项。点(x,y))
以下内容:
import io.appium.java_client.TouchAction;
尝试这种方法,而不是appium方法
JavascriptExecutor js = (JavascriptExecutor) driver;
HashMap<String, String> scrollObject = new HashMap<>();
scrollObject.put("direction", "down");
js.executeScript("mobile: swipe", scrollObject);
JavascriptExecutor js=(JavascriptExecutor)驱动程序;
HashMap scrollObject=新建HashMap();
滚动对象。放置(“方向”,“向下”);
js.executeScript(“移动:滑动”,scrollObject);
hey bro它说类型TouchAction中的方法press(PointOption)不适用于参数(int,int)press(PointOption)
尝试使用此值插入:press(new PointOption().withCoordinates(value,value))
。谢谢bro,这是可行的,但是你知道有没有办法让它滚动得更慢一些吗?它的滚动速度非常快,如下所示:。按(…)。等待操作(持续时间为秒(2))。移动到(…)
。您需要导入:import java.time.Duration代码>