我正在尝试创建一个Intent,可以启动MMS应用程序并附带图像文件,并在消息正文中添加一些预定义文本。到目前为止,我已经能够完成其中一项,但不能同时完成两项。
我尝试过以下内容(以及它们的结果):
有人知道如何将正文和图像文件附加到mms意图中,以启动默认的消息应用程序并填写适当的项目吗?
编辑:在@lenik提供的答案中测试了代码。它在某些设备上有效,以下是我发现的情况:
正常工作:
- Epic 4g (Galaxy S) - Epic 4g Touch (Galaxy S II) - Galaxy Nexus(ICS 4.0.4) - HTC Desire (Froyo 2.2) - Motorola Photon
已附加图像但没有正文:
- Sidekick 4g - Samsung Transform Ultra
有人知道对于这种方式无法正常工作的设备是否基本上无解吗?
我尝试过以下内容(以及它们的结果):
sendIntent = new Intent(android.content.Intent.ACTION_SEND,Uri.parse("mms://"));
sendIntent.setType("image/gif");
sendIntent.putExtra(Intent.EXTRA_STREAM, imgStreamUri);
sendIntent.putExtra("sms_body", "HelloWorld");
startActivity(Intent.createChooser(sendIntent,"Send"));
/**********
Image file is attached but no text added to message body.
**********/
sendIntent = new Intent(android.content.Intent.ACTION_SEND);
sendIntent.setType("image/gif");
sendIntent.putExtra(Intent.EXTRA_STREAM, imgStreamUri);
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "HelloWorld");
sendIntent.putExtra(Intent.EXTRA_TITLE, "WorldHello");
startActivity(Intent.createChooser(sendIntent,"Send"));
/**********
Image file is attached but no text added to message body(or subject or anything).
**********/
有人知道如何将正文和图像文件附加到mms意图中,以启动默认的消息应用程序并填写适当的项目吗?
编辑:在@lenik提供的答案中测试了代码。它在某些设备上有效,以下是我发现的情况:
正常工作:
- Epic 4g (Galaxy S) - Epic 4g Touch (Galaxy S II) - Galaxy Nexus(ICS 4.0.4) - HTC Desire (Froyo 2.2) - Motorola Photon
已附加图像但没有正文:
- Sidekick 4g - Samsung Transform Ultra
有人知道对于这种方式无法正常工作的设备是否基本上无解吗?
imgStreamUri
参数有关,如果它的内容不正确,则文本或文件将无法在MMS消息中正确显示。 - lenikintent.setType()
)。 - lenik