当前位置: 首页 > 知识库问答 >
问题:

如何在Android中为最新版本的Appium执行上下滚动

唐弘和
2023-03-14

我正在上下翻页有人能帮帮我吗?我使用appium版本1.6和java客户端6.01对于最新版本,它是不显示driver.scroll()方法或TouchAction操作=新的TouchAction(this.driver);action.press(starX, start Y). moveTo(endX, endY).释放()。执行();它不执行按

共有1个答案

崔涵亮
2023-03-14

这些方法未经测试,因为我目前没有需要滚动的测试应用程序,但是我已经把它们放在一起,以备将来使用。对于每个滚动/滑动方向,我有两种方法——一种使用Appium,另一种使用javascript执行器。我将展示下面的两个向下滚动例程,您应该能够轻松地从这两个示例中确定如何编写其他方向。

首先,Appium版本:

public void scrollDown() throws Exception {

    //The viewing size of the device
    Dimension size = driver.manage().window().getSize();

    //Starting y location set to 80% of the height (near bottom)
    int starty = (int) (size.height * 0.80);
    //Ending y location set to 20% of the height (near top)
    int endy = (int) (size.height * 0.20);
    //x position set to mid-screen horizontally
    int startx = size.width / 2;

    new TouchActions(driver)
            .down(startx, starty)
            .move(startx, endy)
            .release()
            .build()
            .perform();

}

现在对应的javascript版本:

public void jsScrollDown() throws Exception {

    JavascriptExecutor js = (JavascriptExecutor) driver;
    HashMap<String, String> scrollObject = new HashMap<String, String>();
    scrollObject.put("direction", "down");
    js.executeScript("mobile: scroll", scrollObject);

}

请记住,这两个都没有经过测试,但是我正在使用从Appium网站本身收集的信息,所以它们应该都可以工作。

 类似资料:
  • 我有一个应用程序页面,我需要垂直滚动,以达到应用程序的底部保存按钮。 我正在尝试下面的代码,但得到服务器端错误。 有什么好方法可以在android中实现滚动功能吗?

  • 我的元素在屏幕上不可见,但当我使用.isDisplayed()方法时,我的代码如下 send_mail是要找到的元素的xpath。这是tracelog的帮助!我不能使用while循环进行迭代,直到元素在应用程序中被视为可见时才显示出来。

  • 我是自动化领域的新手,我也不懂脚本,但我正在努力学习自动化,我们正在使用java脚本。我正在努力上下滚动页面,查找EULA条款,有人能帮我吗?我使用的是appium 1.7.1版。还有人可以推荐一个使用android studio而不是eclipse的教程吗。 谢谢,我。

  • 这是我的密码 我想执行滚动,但在屏幕上它没有执行任何操作。这是android设备的屏幕截图 以下是Appium服务器日志: 信息:[调试][引导][调试]已注册的崩溃监视程序。信息:[debug][BOOTSTRAP][debug]客户端连接信息:[debug][BOOTSTRAP][debug]从客户端获取数据:{“cmd”:“action”,“action”:“wake”,“params”:{

  • 我想在android studio中配置,但我无法获得任何文档或链接。Github在许多可用于android的lib上,但都是旧版本。以及如何在Android中运行命令?我想知道在配置之后,如何运行命令。帮帮我。提前谢谢。