Uri uri = Uri.parse("file://"+Environment.getExternalStorageDirectory()+"/test.png");
    Intent i = new Intent(Intent.ACTION_SEND);
    i.putExtra("address","1234567890");
    i.putExtra("sms_body","This is the text mms");
    i.putExtra(Intent.EXTRA_STREAM,"file:/"+uri);
    i.setType("image/png");
    startActivity(i);

I want to send MMS but I don't want to use intent object like above because I am developing my own application of sms manager. So how can I send MMS?

I am referring to this link code but I don't understand it and it doesn't work.

有帮助吗?

解决方案

There is no public API to send an MMS in Android at the moment.

其他提示

MMS is a HTTP based request in Android. You have to have mobile data to send an MMS. There are no APIs exposed by Android to send an MMS, as they have APIs for SMS. If you want your application to send MMS you will have to write everything. Please refer the AOSP code. https://github.com/android/platform_packages_apps_mms OR you can simply build the Intent and then launch the native Messaging App.

Android's SmsManager API now supports this functionality since API level 21, with the sendMultimediaMessage method:

void sendMultimediaMessage (Context context, 
                Uri contentUri, 
                String locationUrl, 
                Bundle configOverrides, 
                PendingIntent sentIntent)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top