Appium 之上划下划,左划右划

Posted tianyumuhe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Appium 之上划下划,左划右划相关的知识,希望对你有一定的参考价值。

听说appium Java-client 新版本不支持swipe了,网上没找到完整可用的,今天正好整理出用TouchAction替换的脚本,记录一下,嘻嘻……

import java.time.Duration;

import io.appium.java_client.TouchAction;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.touch.WaitOptions;
import io.appium.java_client.touch.offset.PointOption;

public class SwipeClass {
    
    static Duration duration=Duration.ofSeconds(1);
    public void swipeToUp(AndroidDriver driver) {
        int width = driver.manage().window().getSize().width;
        int height = driver.manage().window().getSize().height;
        TouchAction action1=new TouchAction(driver).press(PointOption.point(width/2, height*3/4)).waitAction(WaitOptions.waitOptions(duration))
                                .moveTo(PointOption.point(width/2, height/4)).release();
        action1.perform();
    }

 
    public void swipeToDown(AndroidDriver driver) {
        int width = driver.manage().window().getSize().width;
        int height = driver.manage().window().getSize().height;
        TouchAction action2=new TouchAction(driver).press(PointOption.point(width/2, height/4)).waitAction(WaitOptions.waitOptions(duration))
                                .moveTo(PointOption.point(width/2, height*3/4)).release();
        action2.perform();
    }

    public void swipeToLeft(AndroidDriver driver) {
        int width = driver.manage().window().getSize().width;
        int height = driver.manage().window().getSize().height;
        TouchAction action3=new TouchAction(driver).press(PointOption.point(width*3/4, height/2)).waitAction(WaitOptions.waitOptions(duration))
                            .moveTo(PointOption.point(width/4,height/2)).release();
       action3.perform();
    }


    public void swipeToRight(AndroidDriver driver) {
        int width = driver.manage().window().getSize().width;
        int height = driver.manage().window().getSize().height;
        TouchAction action4=new TouchAction(driver).press(PointOption.point(width / 4, height / 2)).waitAction(WaitOptions.waitOptions(duration))
                                .moveTo(PointOption.point(width*3/4,height/2)).release();
        action4.perform();
    }

}

 

以上是关于Appium 之上划下划,左划右划的主要内容,如果未能解决你的问题,请参考以下文章

iOS自定义全屏返回与tableView左划删除手势冲突解决

Android 自定义滑动解锁View

Android 自定义滑动解锁View

Android 自定义滑动解锁View

Android 自定义滑动解锁View

用Principle制作卡片左右划动动效#Principle教程