如何从Android应用程序发送/打开电子邮件附件?

时间:2010-01-09 15:20:24

标签: android email attachment file-sharing

我想以某种方式将我的应用程序在一台Android设备上发送到我的应用程序在另一台设备上。这可以通过任何方式完成,如果您能告诉我如何通过网络或类似的方式发送,我愿意接受建议。

目前,我正在考虑将该文件作为电子邮件附件发送,但我还没有找到任何有关如何执行此操作的良好文档。我需要两件事来实现这一点,能够将我的文件(存储在SD卡或设备上的某个地方)作为附件发送,并让我的应用程序被android识别为应用程序以打开带有文件扩展名的附件(.lst)

有什么想法吗?

如果这些文件有所不同,那么这些文件都将是相当小的xml文本文件。

2 个答案:

答案 0 :(得分:4)

  

我想以某种方式发送文件   从我的应用程序在一个Android设备上   我的应用程序在另一台设备这可以   做任何方式,我愿意接受   建议,如果你能告诉我如何   通过网络或类似的东西发送   这一点。

编写Web服务。或者使用Amazon SQS。

  

能够发送我的文件(存储在SD上   卡或设备上的某个地方)   附件

按照here的说明,您可以尝试:

Intent sendIntent = new Intent(Intent.ACTION_SEND);

sendIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
sendIntent.putExtra(Intent.EXTRA_STREAM, ...);
sendIntent.setType(...); 

其中第一个省略号是所选文件的路径,第二个省略号是合适的MIME类型。

  

并让我的应用程序被android识别   作为打开附件的应用程序   文件扩展名(.lst)

永远不要依赖文件扩展名。使用MIME类型。您可以使用意图过滤器设置活动,该过滤器为您的MIME类型提供ACTION_VIEW支持。

答案 1 :(得分:1)

我这样做是为了处理附加到邮件的vcf文件并且它有效。这是意图文件管理器:

        <intent-filter>
            <category android:name="android.intent.category.DEFAULT" />
            <action android:name="android.intent.action.VIEW" />
            <data android:mimeType="text/x-vcard" />
        </intent-filter>

请参阅http://code.google.com/p/card-catcher中的完整代码。