尝试使用appium自动化Android应用程序时,输入以下代码进行滑动给予----
TouchAction io.appium.java_client.TouchAction.press(WebElement el)
@Deprecated
TouchAction ac = new TouchAction(driver);
ac.press(436,652).moveTo(-311,-14).release().perform();
可以用什么来滑动?
答案 0 :(得分:0)
不推荐使用坐标或等待时间。您现在应该使用ActionOptions。如果是积分,他们会调用PointOptions。
答案 1 :(得分:0)
TouchAction为我提供了启动和停止滑动的元素:
WebElement start = driver.findElement(By.id("xxxxxx"));
WebElement stop = driver.findElement(By.xpath("xxxxxx"));
TouchAction action = new TouchAction(driver);
action.longPress(start).moveTo(stop).release().perform();
答案 2 :(得分:0)
以下代码中的waitAction
对于正确实施滑动操作至关重要(这花了我几个小时的学习时间)。
public static void actionSwipeLeft(AndroidDriver driver)
{
Dimension dims = driver.manage().window().getSize();
int x = (int) (dims.getWidth() * .5);
int y = (int) (dims.getHeight() * .8);
int endX = 0;
System.out.println("Swiping left.");
new TouchAction(driver)
.press(new PointOption().withCoordinates(x, y))
.waitAction(new WaitOptions().withDuration(Duration.ofMillis(500)))
.moveTo(new PointOption().withCoordinates(endX, y))
.release()
.perform();
}
答案 3 :(得分:0)
我认为评论者之一,迈克(Mike),关于过时的等待时间可能是正确的。 (所有源代码都散乱了。)这是我使用的代码。希望能帮助到你。
new TouchAction(driver).longPress(PointOption.point(x, y)).moveTo(PointOption.point(x, y)).release().perform();