【发布时间】:2016-01-15 03:19:36
【问题描述】:
如何使用appium android处理软键盘并隐藏它。
下面是我的场景:
- 打开 Flipkart 应用程序
- 点击搜索图标
- 输入一些文字 [例如:汽车]
- 点击设备键盘上的搜索图标
下面是我实现的代码:
driver.findElement(By.className(properties.getProperty("home_menu_className"))).click();
System.out.println("clicked fist cross mark");
driver.findElement(By.className(properties.getProperty("home_menu_className"))).click();
System.out.println("click menu options");
driver.findElementByName(properties.getProperty("home_menu_back_name")).click();
System.out.println("clicked home back button");
//WebElement search = driver.findElement(By.xpath(properties.getProperty("search_xpath")));
//taction.tap(search);
driver.rotate(ScreenOrientation.LANDSCAPE);
driver.findElementByName(properties.getProperty("search_name")).click();
System.out.println("clicked search icon");
WebElement search_item = driver.findElementByName(properties.getProperty("search_edit_field_name"));
search_item.sendKeys("cars");
search_item.sendkeys(KEYS.ENTER);
System.out.println("entered search text");
delay(8000);
我使用“driver.rotate(ScreenOrientation.LANDSCAPE);”在代码中但是 得到错误 org.openqa.selenium.WebDriverException: An unknown 处理命令时发生服务器端错误。 (警告: 服务器没有提供任何堆栈跟踪信息)
并且在使用 driver.hideKeyboard() 时出现错误;
谁能告诉我?
提前致谢。
【问题讨论】:
-
您的 Java 客户端 JAR 的版本是什么?你使用 webdriver/androiddriver/appiumdriver 吗?
-
我正在使用 3.2.0 java 客户端 jars 。我正在使用 appium 驱动程序和 android 驱动程序
-
你试过了吗?
driver.navigate().back(),它会帮助你处理键盘。 -
没有。但是 driver.navigate().back();我认为将重定向到后页。能否请您详细告诉我,我没有明白这一点
-
实际上当键盘打开并且执行
driver.navigate().back()时,它会关闭键盘,如果键盘没有打开并且您执行driver.navigate().back(),那么只有它会将您重定向到上一个屏幕。