Как отправить нажатие клавиши через adb во время телефонного звонка?

Я хотел бы иметь возможность использовать ADB для полного управления процессом телефонного звонка (в первую очередь, потому что у меня треснул экран и я ничего не вижу).

Я знаю, что могу инициировать телефонный звонок через:

adb shell am start -a android.intent.action.CALL -d tel:1234567890

Точно так же я знаю, что могу использовать ключевые события для завершения вызова:

adb shell input keyevent KEYCODE_ENDCALL

Однако я столкнулся с проблемами, когда голосовая почта спрашивает: «Нажмите 1, чтобы прослушать ваше сообщение, 2 для настроек и т. Д.».

Я надеялся, что следующая команда сработает:

adb shell input keyevent KEYCODE_1

или, по крайней мере, следующее:

adb shell sendevent /dev/input/event0 1 2 1
adb shell sendevent /dev/input/event0 1 2 0

Однако голосовая почта не распознает выбор и просто повторяет сообщение. У меня нет возможности проверить визуально, так как у меня нет доступа к экрану.

Какие-либо предложения?

Спасибо за вашу помощь.

Ссылки:

  1. Выполнение вызова через adb Как сделать вызов через компьютер командой ADB на Android?
  2. Событие ввода и список событий События ввода оболочки ADB
  3. Отправить событие https://groups.google.com/forum/?fromgroups=#!topic/android-beginners/il2PqSKRFNI

person user2096704    schedule 21.02.2013    source источник


Ответы (1)


Во время звонка вам нужно переключиться на вкладку «Панель набора номера», чтобы иметь возможность отправлять DTMF-коды.

person Alex P.    schedule 21.02.2013
comment
Это имеет смысл :) Поскольку я прочитал ваш ответ, я искал, как переключиться на панель набора номера (в ПЗУ CM10), однако пока мне не повезло. Вы случайно не знаете команду, которая потребуется? Я предполагаю, что после того, как я переключился на Dialpad, один из двух подходов, указанных в исходном сообщении, будет работать. - person user2096704; 22.02.2013
comment
Я застрял в аналогичной проблеме, так вы нашли какое-либо решение? - person Tulika; 15.04.2015