Подтвердить что ты не робот

Отправить SMS с помощью сервиса adb shell call isms Android 4.1.2

В настоящее время я отправляю SMS с помощью этой команды:

служебные вызовы службы adb 6 s16 "phoneNumber" i32 0 i32 0 s16 "smsText"

в Android 2.3.6 и отлично работает.

Теперь я хочу использовать ту же команду в Android 4.1.2, но когда я отправлю команду, я получил этот вывод в Logcat

> 12-11 14:17:37.97 1626-2182/? D/PhoneRestrictionPolicy﹕ SmsRestrictionPolicy.canOutgoingSms >>>>

Кто-нибудь может помочь мне удалить эту "SmsRestrictionPolicy", пожалуйста?

Спасибо

4b9b3361

Ответ 1

Цитата этот пост:

adb shell am start -a android.intent.action.SENDTO -d sms:CCXXXXXXXXXX --es sms_body "SMS BODY GOES HERE" --ez exit_on_sent true
adb shell input keyevent 22
adb shell input keyevent 66

Где CCXXXXXXXXXX - код страны, за которым следует номер телефона. Это может не сработать корректно на нестандартных установках Android, вам нужно будет найти правильные значения ключа.


Из комментариев на этот пост кажется, что отправка через service call isms, как упоминалось в вопросе, невозможна (хотя я бы поспорил, что это возможно, если ваш приложение установлено как SMS-приложение по умолчанию для устройства).


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

Ответ 2

Моя окружающая среда:

  • Android 4.1.2
  • MIUI ROM

вы можете попробовать это.

Переключитесь на пользователя приложения сообщений до команды service call isms ...

su u0_a34\
служебные вызовы 5 s16" 10086 "i32 0 i32 0 s16" 11"

u0_a34 - имя пользователя приложения сообщения.

Ответ 3

Попробуйте выполнить команды telnet и sms send.

Подробнее здесь.

Ответ 4

Это не сработало, потому что в android 4.1.2 число isms равно 5, а не 6. Итак:

adb shell service call isms 5 s16 "com.android.mms" s16 "+01234567890" s16 "+01000000000" s16 "Hello world !" i32 0 i32 0

Вы можете проверить, как это сделать для любой версии Android: ссылка