Отправка mms в фоновом режиме без отображения интерфейса


Приведенный ниже код навигирует меня тоже по умолчанию MMS приложение с фотографией, текстом и номером

Intent mmsIntent = new Intent(Intent.ACTION_SEND);
mmsIntent.putExtra("sms_body", "text");
mmsIntent.putExtra("address", "121");
mmsIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "photo.jpeg")));
mmsIntent.setType("image/jpeg");
mmsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(mmsIntent);

Что мне нужно, так это отправлять mms в фоновом режиме, не показывая никакого интерфейса. Я могу отправлять текстовые sms с помощью SmsManager с помощью

SmsManagaer smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(num, null, "Help Me", null, null);

Могу ли я использовать smsManager.sendMultimediaMessage() чтобы отправить mms (я пробовал этот метод и пока безуспешно )? Если нет, то какой от этого прок? И есть ли другой способ отправить mms в фоновом режиме?

1 3

1 ответ:

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

Чтобы отправить MMS без взаимодействия с пользователем, вы можете использовать smsManager.sendMultimediaMessage() для отправки MMS, но этот метод был введен с версии API 21. Вы можете сослаться на демонстрацию по здесь, чтобы увидеть, как отправлять MMS с помощью sendMultimediaMessage().

К поддержка версий до этого вы можете интегрировать решение, указанное в этом ответе .