2015-07-25 3 views
2

Код ниже навигационный меня тоже по умолчанию 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); 

Что мне нужно отправить ммс в фоновом режиме, не проявляя какой-либо вид интерфейса. Я могу отправлять текстовые SMS с помощью SMSManager с помощью

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

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

+0

Вы прочитали документы, на которые ссылаетесь? -> «Отправить MMS-сообщение», что именно на ваш вопрос –

+0

@TimCastelijns: Мне нужно послать mms через сервис (background) –

+0

Это не вопрос, пожалуйста, свяжитесь с нами –

ответ

1

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

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

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

+0

Спасибо, я проверю это :) –