в приложении java клиент 7.0.0 - это driver.pressKeyCode (AndroidKeyCode.HOME);устарел, что использовать вместо этого? - PullRequest
1 голос
/ 09 июня 2019

Я использую следующую среду:

PL: Java
Appium java client 7.0.0
Appium server version: 1.13.0
Device Samsung Galaxy S8
Android Version 9.0

, но при попытке ввести следующий код для нажатия клавиши Android Home:

driver.pressKeyCode(AndroidKeyCode.HOME);

Но я получаю сообщение компилятора о том, чтоэто устарело.Как я могу нажать клавишу Home?

Спасибо за любую поддержку

Ответы [ 2 ]

1 голос
/ 10 июня 2019

Значение кода клавиши для кнопки «Домой» Android: 3 .

Попробуйте использовать 3 вместо AndroidKey.HOME

0 голосов
/ 10 июня 2019

Вы можете использовать pressKey () вместо pressKeyCode.

import io.appium.java_client.AppiumDriver;
import io.appium.java_client.MobileElement;
import io.appium.java_client.android.AndroidDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import io.appium.java_client.android.nativekey.AndroidKey;
import io.appium.java_client.android.nativekey.KeyEvent;

//initialize AppiumDriver
((AndroidDriver<MobileElement>) driver).pressKey(new KeyEvent(AndroidKey.HOME));

Альтернативный способ нажатия кнопки «Домой»:

String cmd = "adb shell input keyevent 3";
Runtime.getRuntime().exec(cmd);
...