Я пытаюсь набрать секретный код, например * # * # 0808 # * # * на клавиатуре номеронабирателя из оболочки adb - PullRequest
0 голосов
/ 29 мая 2019

Я хочу набрать номер через устройство набора номера Android, которое открывает клавиатуру / номеронабиратель и набирает номер, используя команды adb.

Я пытался набрать номер, используя следующие команды оболочки adb:

adb shell am start -a android.intent.action.CALL -d tel:*#*#0808#*#*

Но это набирает номер OTA как код MMI, и это не то, что мы хотим.

Мне говорят, что код # # 0808# # - это секретный код, который запускает скрытое меню и должен набираться через номеронабиратель.

Я обнаружил, что команда:

adb shell monkey -p com.android.dialer -c android.intent.category.LAUNCHER 1

запускает приложение телефона (но не цифровую клавиатуру).

Итак, я попытался набрать его с помощью команд:

adb shell monkey -p com.android.dialer/com.android.incallui.InCallActivity -c android.intent.category.LAUNCHER 1 *#*#0808#*#*

но это не сработало.

Может ли кто-нибудь помочь, почему это не работает?и как я могу запустить номеронабиратель и набрать этот номер?

Спасибо!

Ответы [ 2 ]

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

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

adb shell input keyevent KEYCODE_HOME

adb shell input tap 197 2523 #enter the dialer 

adb shell input tap 1272 2467 #enter the dialer keypad

adb shell input text "*#*#4412#*#*"

Эти типы чисел называются кодами USSD / командами MMI.

0 голосов
/ 29 мая 2019

Что именно вы пытаетесь достичь? Эти коды называются USSD-кодами (попробуйте USSD-коды Google Android). И они разные на каждом устройстве. Хорошо, некоторые из них работают на большинстве телефонов, но это не правило. Пожалуйста, будьте очень осторожны с этими кодами, так как некоторые из них могут сделать сброс к заводским настройкам или неправильно настроить ваше устройство.

При выполнении этих кодов через adb вам необходимо url-кодировать их (отметьте https://www.degraeve.com/reference/urlencoding.php),, поэтому * равно %2A и # равно %23 В вашем случае:

adb shell am start -a android.intent.action.CALL -d tel:%2A%23%2A%230808%23%2A%23%2A

Но если код не работает для вас при вставке через номеронабиратель, это также не будет работать. Я пробовал ваш код на моем Sony Xperia Z5 с Android 6.0, и он не работал: - (

Кстати, настройки USB можно получить через Настройки> Параметры разработчика> Настройка USB

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...