Какой третий аргумент в monkeyrunner.press - PullRequest
5 голосов
/ 15 июля 2011

После обновления инструмента SDK до версии 12, когда я подключаюсь к monkeyrunner и использую метод нажатия, например, device.press ('KEYCODE_HOME', 'DOWN'), получит ошибку msg

Traceback (последний последний вызов): Файл "", строка 1, в TypeError: press: Требуется третий аргумент.

Но я проверяю sdk doc, что press содержит только два аргумента.это проблема, вызванная новой версией SDK tool.

Ответы [ 4 ]

3 голосов
/ 16 июля 2011

Чтобы нажать клавишу, используя бегун обезьян, вам нужно использовать что-то вроде device.press('KEYCODE_HOME',MonkeyDevice.DOWN_AND_UP), вам не нужно добавлять третий аргумент.

Возможно, ваша проблема заключалась в том, что вы использовали 'DOWN' вместо MonkeyDevice.DOWN

2 голосов
/ 30 октября 2011

На самом деле третий аргумент также является строкой, указывающей тип печати. Это постоянная в MonkeyDevice: DOWN, UP и DOWN_AND_UP

Если вы не хотите импортировать MonkeyDevice, чтобы использовать его только для этого, правильная строка, которая будет использоваться в Monkeyrunner, должна быть 'down', 'up' и 'downAndUp'.

Они определены в классе enum ChimpChat.TouchPressType. Вот ниже его частичный исходный код:

public enum TouchPressType {
    DOWN("down"), UP("up"), DOWN_AND_UP("downAndUp");
...
}
1 голос
/ 12 октября 2011

Чтобы нажать клавишу, используя бегун обезьян, вам нужно использовать что-то вроде device.press ('KEYCODE_HOME', 'DOWN', ''), вы не получили никакой ошибки.

Третий аргумент будет пустым.

0 голосов
/ 02 сентября 2017

Вам необходимо добавить MonkeyDevice

Например, команда вставки будет выглядеть следующим образом.

device.press('KEYCODE_PASTE',MonkeyDevice.DOWN)
...