使用哪种mime类型,在Gmail中附加“.zip”文件

时间:2011-07-05 13:14:59

标签: android

我要求我需要附加“.zip”文件并使用Gmail服务发送电子邮件。

我使用下面的代码来执行此操作:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType(application/x-compressed);
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{abc@gmail.com});
intent.putExtra(Intent.EXTRA_STREAM,         
Uri.parse(abc.zip);
intent.putExtra(Intent.EXTRA_TEXT, "hello..");

如果我使用“application / x-compressed”mime类型,我可以发送“.zip”附件,但我无法直接启动Gmail编辑器,之前它会提供选项列表。

如果我使用“message / rfc822”mime类型,我可以直接启动Gmail编辑器,但无法附加“.zip”文件。

PL。帮助我如何在单个intent对象中组合这两个mime类型。 PL。让我知道是否有任何替代方法可以做到这一点。 感谢。

3 个答案:

答案 0 :(得分:0)

这对我有用-

(localStorage).getString(anyString())

this answer中找到的哑剧类型

答案 1 :(得分:-1)

intent.setClassName(“com.google.android.gm”,“com.google.android.gm.ComposeActivityGmail”);

直接打开Gmail。但是如果没有安装gmail,它将导致异常,ActivityNotFound

答案 2 :(得分:-2)

我正在使用此代码并且正常工作。检查一下:

Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[]{"Example@gmail.com"});        
email.putExtra(Intent.EXTRA_SUBJECT, "subject//@@");
email.putExtra(Intent.EXTRA_TEXT, "message//@@");
email.setType("message/rfc822");
Uri uri = Uri.parse("sdcard/1.zip");
email.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(Intent.createChooser(email, "Choose an Email client :"));