此代码旨在找到文本框并向其发送一些文本。 当它这样做时,键盘出现在Android设备上。如何在sendKeys之后解除它。
@Test
public static void test_demo() throws Exception {
WebElement element = driver.findElement(By.id("mytextfield"));
element.sendKeys("test");
//how do I dismiss keyboard which appears on my android device after sendKeys?
}
答案 0 :(得分:17)
driver.hideKeyboard()
仅适用于AppiumDriver
。
我正在使用包含此功能的java-client-2.2.0.jar。
答案 1 :(得分:8)
最好的方法是使用后退按钮。
driver.navigate().back(); // For older version of appium
答案 2 :(得分:4)
如果要在Android selenium测试中禁用键盘,请添加这些所需的功能值。
capabilities.setCapability("unicodeKeyboard", true);
capabilities.setCapability("resetKeyboard", true);
答案 3 :(得分:2)
请使用Appium 1.0
添加库或添加Appium Java客户端的maven依赖关系:
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>1.1.0</version>
</dependency>
以下列方式创建驱动程序实例:
AppiumDriver driver=null;
driver= new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"),capabilities);
使用以下功能隐藏键盘:
driver.hideKeyboard();
答案 4 :(得分:2)
我每次使用driver.hideKeyboard();
输入内容时都会使用sendKeys()
。适合我。
答案 5 :(得分:1)
public static AndroidDriver driver= null;
......
driver.hideKeyboard();
根据我的经验,将完美运作
答案 6 :(得分:1)
capabilities.setCapability("unicodeKeyboard", true);
capabilities.setCapability("resetKeyboard", true);
仍然适用于1.7.2并假设为1.8
答案 7 :(得分:1)
不使用AppiumDriver
的用户的解决方案:
((AppiumDriver)driver).hideKeyboard();