java appium客户端 6.1.0android长按及滑动变更

今天使用appium 6.1.0 java客户端,发现长按longpress(element),无法使用。如下代码在5.0.4 版本是可以正常运行的,

        WebElement noteDelete = driver.findElementByXPath("//android.widget.ListView[@resource-id='android:id/list']/android.widget.RelativeLayout[1]");
        int x  = noteDelete.getLocation().getX();
        int y  = noteDelete.getLocation().getY();
        TouchAction action = new TouchAction(driver);
        Duration duration = Duration.ofMillis(2000);    //按压1秒
        action.press(x,y).waitAction(duration).moveTo(x,y).release().perform();   //方式一 长按和滑动都适用
        action.longPress(noteDelete).release().perform();   //方式二 长按

这段代码再6.1.0是无法使用的,最后安装api提示,修改代码如下,longpress 和press 都可以,实际使用选中一种方法就可以了

        WebElement noteDelete = driver.findElementByXPath("//android.widget.ListView[@resource-id='android:id/list']/android.widget.RelativeLayout[1]");
        int x = noteDelete.getLocation().getX();
        int y = noteDelete.getLocation().getY();
        Duration duration =  Duration.ofMillis(2000);
        TouchAction action = new TouchAction(driver); 
        action.longPress(PointOption.point(x,y)).release().perform();  //长按

        action.press(PointOption.point(x,y))   //长按和滑动都适用
                .waitAction(WaitOptions.waitOptions(duration))  
                .moveTo(PointOption.point(x,y))
                .release()
                .perform();

 

posted @ 2018-07-20 18:20  testway  阅读(425)  评论(0编辑  收藏  举报