Android ChimpChat нажимает клавишу Backspace - PullRequest
0 голосов
/ 28 февраля 2012

Я пытаюсь использовать ChimpChat для проекта, который включает введение событий ввода в подключенное устройство.

Есть методы 1. void press (клавиша PhysicalButton, тип TouchPressType);2. void press (String keyName, тип TouchPressType);

Я могу правильно использовать 1-й метод через: iDevice.press (кнопка, тип);

Однако я могу '2-й метод работает.Попытка что-то вроде iDevice.press («A», тип) не вводит «A» на устройстве, даже если регистрируется следующее:

27 февраля 2012 г. 16:58:36 com.android.chimpchat.ChimpManager sendMonkeyEventAndGetResponse ИНФОРМАЦИЯ: Команда Monkey: нажмите клавишу A.

Мне удалось обойти это, используя

  1. тип void (String string);

Теперь мой вопрос: как мне заставить работать клавишу возврата?Тип вызова ("\ b");не стирается на устройстве.

Кто-нибудь использовал 2. пустое нажатие (String keyName, TouchPressType type);метод ранее?Если так, я делаю что-то не так?Я немного смущен тем, каким должно быть keyName.Если нет, кто-нибудь знает, как отправить символ возврата на устройство?

Большое спасибо!

1 Ответ

1 голос
/ 28 февраля 2012

Последнее, что я смотрел ChimpManager имеет несколько больше методов, чем выставляет IDevice.Вы можете получить доступ к другим методам через device.getManager().Один из тех методов, которые могут вам помочь, это press(PhysicalButton).Таким образом, вы должны иметь возможность заставить backspace работать следующим образом:

device.getManager().press(PhysicalButton.BACK)

Посмотрите на источник , чтобы лучше понять, как все это работает.

ОБНОВЛЕНИЕ:

Упс, вы ищете возврат!В соответствии с monkey README:

код клавиши [вниз | вверх]

Эта команда вводит KeyEvent в систему ввода.Параметр keycode ссылается на список KEYCODE в классе KeyEvent (http://developer.android.com/reference/android/view/KeyEvent.html). Формат этого параметра достаточно гибкий. Используя в качестве примера клавишу меню, это может быть 82 (целочисленное значение кода клавиши), KEYCODE_MENU (имякода клавиши) или просто меню (и Monkey добавит часть KEYCODE). Обратите внимание, что эта последняя часть не работает для таких вещей, как KEYCODE_1 по понятным причинам.

Класс KeyEvent, который вы должны использовать:

device.getManager().keyDown("KEYCODE_DEL") // Backspace according to KeyEvent
// OR
device.getManager().keyDown("67")
...