web-dev-qa-db-ja.com

Javaを使用してappiumでキーボードを閉じる方法は?

このコードは、テキストボックスを見つけてテキストを送信することを目的としています。その場合、キーボードは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?  
    }
11
shiva1791

driver.hideKeyboard()AppiumDriverでのみ機能します。この機能を含むJava-client-2.2.0.jarを使用しています。

18
Eyal Sooliman

最善の方法は、戻るボタンを使用することです。

driver.navigate().back(); // For older version of appium
8
user2220762

Android Seleniumテストでキーボードを無効にする場合は、これらの必要な機能値を追加します。

capabilities.setCapability("unicodeKeyboard", true);
capabilities.setCapability("resetKeyboard", true);
4
SOAlgorithm

driver.hideKeyboard();を使用して何かを入力するたびにsendKeys()を使用します。私にとっては完璧に機能します。

2
Santosh Pillai

Appium1.0を使用してください

ライブラリを追加するか、Appiumのmaven依存関係を追加しますJava client:

<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();
2
Abhishek Swain
public static AndroidDriver driver= null;
......

driver.hideKeyboard();

私の経験に基づいて完全に機能します

1
Prasetyo Budi

AppiumDriverを使用していない人のための解決策:

((AppiumDriver)driver).hideKeyboard(); 
1
Al Imran
capabilities.setCapability("unicodeKeyboard", true);
capabilities.setCapability("resetKeyboard", true);

1.7.2でも動作し、1.8を想定しています

1