我想将.ics文件(icalendar文件)附加到MMS消息,但是android消息传递应用程序似乎仅限于媒体附件。 MMS应用程序打开时按顺序排列(To和body字段),但没有附件的痕迹,就好像它已被完全忽略一样。
我使用的是android意图,代码如下:
String uri = "file:///mnt/sdcard/meeting.ics";
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.putExtra("address", toMMS);
sendIntent.setType("text/calendar");
sendIntent.setClassName("com.android.mms", "com.android.mms.ui.ComposeMessageActivity");
sendIntent.putExtra("sms_body", "You've been invited to a new meeting");
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(uri));
this.startActivity(sendIntent);
我也试过没有成功,查找MIME类型:
sendIntent.setType("text/*");
或
sendIntent.setType("text/plain");
我用普通的txt文件测试了所有上述情况,但仍然没有附件。标准的MMS android应用程序似乎不接受非媒体文件附件。
我还试图完全删除setType行,但是当启动时消息应用程序崩溃。
那么,是否有人知道如何将非媒体文件附加到彩信?或者如果不可能?
我的手机是:谷歌Nexus S. Android版本2.3.4
提前致谢。
PD:这里提出了同样的问题,但没有回答:Sending an MMS with a vCard attachment on Android devices
答案 0 :(得分:0)
Messaging应用程序仅具有支持特定类型文件附件的代码,它生成的本质上是SMIL文档(即使“附件”是单个图像)。如果您想发送带有其他附件类型的彩信,您需要更深入地了解这一点。
您可以通过查看ComposeMessageActivity来了解我的意思,尤其是mAttachmentEditorHandler的定义。