Ответ 1
driver.hideKeyboard()
будет работать только с AppiumDriver
.
Я использую java-client-2.2.0.jar, который содержит эту возможность.
Этот код предназначен только для поиска текстового поля и отправки ему некоторого текста. Когда он делает это, клавиатура появляется на устройстве 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?
}
driver.hideKeyboard()
будет работать только с AppiumDriver
.
Я использую java-client-2.2.0.jar, который содержит эту возможность.
Лучший способ - использовать кнопку "Назад".
driver.navigate().back(); // For older version of appium
Добавьте эти значения желаемых возможностей, если вы хотите отключить клавиатуру на своих тестах на селен.
capabilities.setCapability("unicodeKeyboard", true);
capabilities.setCapability("resetKeyboard", true);
Пожалуйста, используйте Appium 1.0
Добавить библиотеки или добавить зависимость maven от клиента Appium Java:
<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();
Я использую driver.hideKeyboard();
каждый раз, когда я использую sendKeys()
для ввода чего-либо. Отлично работает для меня.
public static AndroidDriver driver= null;
......
driver.hideKeyboard();
будет отлично работать на основе моего опыта
capabilities.setCapability("unicodeKeyboard", true);
capabilities.setCapability("resetKeyboard", true);
Все еще работает с 1.7.2 и предполагая, что 1.8
Решение для тех, кто не использует AppiumDriver
:
((AppiumDriver)driver).hideKeyboard();