2016-09-21 8 views
0

enter image description hereappiumセレンカント電話番号キーに送る

こんにちは、通常、私はSENDKEYメソッドを使用することができますが、私はこれをカントMobilePhone要素のために、.I等の鍵一つ一つ、一部の一部、またはテキストを送信しようとしましたそれは仕事をしなかった。あなたは私を助けることができますか? マイコード:

List<WebElement> menu22 =driver.findElements(By.className("android.widget.EditText")); 
menu22.get(3).click(); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_5); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_7); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_5); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_7); 
     ((AndroidDriver) driver).pressKeyCode(AndroidKeyCode.KEYCODE_6); 
The other my codes: 


List<String> tel = Arrays.asList("5", "4", "5", "8", "5","3", "4", "5", "8", "5"); 
     for (int i = 0; i < tel.size(); i++) { 
      menu22.get(3).sendKeys(tel.get(tel.size()-1-i)); 
      driver.hideKeyboard(); 
     } 

や他のコード:

menu22.get(3).sendKeys("5458650215")); 
+0

誰でも助けますか? :( – little

答えて

0

次の機能

capabilities.setCapability( "unicodeKeyboard"、true)を使用してください。 capabilities.setCapability( "resetKeyboard"、true);

これがhideキーボードに役立ちます、つまり、テスト実行のキーボードの間にソフトキーこれは、モバイルアプリでいくつかの要素のために起こる代わっ

+0

これでうまくいかない場合は、 デバイス設定 - >言語と入力に移動し、デフォルトのキーボードをAppiumのAndroid Input Managerに変更し、任意のEditTextフィールドをタップします。 キーボードがポップアップしていないかどうか確認してください。もしそうなら、 – FayazMd

0

上で実行されます、まったく表示されません必要があります。そのような要素を以下のようにドライバキーボードを使用して入力するには:

List<WebElement> menu22 =driver.findElements(By.className("android.widget.EditText")); 


menu22.get(3).click(); 

driver.getKeyboard().sendKeys("Your Text to be typed");