У меня есть вопрос о намерении ... Я пытаюсь запустить приложение смс ...
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setType("vnd.android-dir/mms-sms");
int flags = Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP |
Intent.FLAG_ACTIVITY_CLEAR_TOP;
intent.setFlags(flags);
intent.setData(Uri.parse("content://sms/inbox"));
context.startActivity(intent);
Итак, вы можете видеть, что я вкладываю слишком много вещей в свои намерения, но это потому, что я не знаю, как я могу это сделать ... Спасибо
android
sms
android-intent
Olivier69
источник
источник
Ответы:
Чтобы начать работу с SMS, все что вам нужно это:
Вы можете добавить дополнения, чтобы заполнить ваше собственное сообщение и тому подобное
тогда просто начните деятельность с намерением.
источник
sendIntent.setData(Uri.parse("sms:" + phoneNumber));
(спасибо jqpubliq и jaydeepw)источник
intent.setData(Uri.parse("smsto:" + phoneNumber));
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW typ=vnd.android-dir/mms-sms (has extras) }
Если версия Android - Kitkat или выше, пользователи могут изменить приложение смс по умолчанию. Этот метод получит приложение sms по умолчанию и запустит приложение sms по умолчанию.
источник
Это все, что вам нужно.
источник
Если вы хотите запустить действие «Составление SMS» из какого-либо другого действия, а также вам необходимо передать номер телефона и текст SMS, используйте этот код:
Примечание: здесь
sms_body
иsmsto:
- это клавиши для распознавания текста и номера телефона в SMS-сообщениях, поэтому будьте осторожны.источник
Вот код, который откроет действие SMS, предварительно заполненное номером телефона, на который необходимо отправить SMS. Это прекрасно работает как на эмуляторе, так и на устройстве .
источник
использование
источник
Я использую:
источник
источник
Лучший способ сделать это.
источник
Вы можете открыть приложение sms по умолчанию и передать детали, как показано ниже:
Примечание. Если вы хотите отправить несколько номеров, отделите каждый номер с помощью «;» внутри строки
| Или | Используйте эту функцию:
источник
В kotlin это может быть легко реализовано следующим образом:
Это модифицированный ответ @mustafasevgi
источник
источник
Лучший код, который работает с приложением SMS по умолчанию.
источник
Приведенный ниже код работает на Android 6.0.
Он откроет поисковое действие в приложении обмена сообщениями по умолчанию с разговорами, относящимися к определенной строке.
Вы можете начать поиск с намерением. Откроется поисковая активность приложения обмена сообщениями по умолчанию. Теперь, чтобы показать список определенных разговоров в поисковой активности, вы можете указать строку поиска в виде дополнительной строки с ключом
как показано в onCreate этого класса
Вы также можете передать SENDER_ADDRESS SMS-сообщения как дополнительную строку, в которой будут перечислены все разговоры с указанным адресом отправителя.
Проверьте com.android.mms.ui.SearchActivity для получения дополнительной информации
Вы также можете проверить этот ответ
источник
на эмуляторе это работа для меня
источник
Sms Intent:
источник
Составить СМС:
источник
Либо вы можете использовать это, оба работают нормально на Android выше 4.4
или
источник
Вы можете использовать следующий фрагмент кода для достижения своей цели:
Если вам не нужен текст, удалите ключ sms_body.
источник