当前位置: 移动技术网 > IT编程>移动开发>Android > Android开发中怎样调用系统Email发送邮件(多种调用方式)

Android开发中怎样调用系统Email发送邮件(多种调用方式)

2019年07月24日  | 移动技术网IT编程  | 我要评论

神偷保镖,君子兰的作用,人皮客栈2高清

我们都知道,在android中调用其他程序进行相关处理,几乎都是使用的intent,所以,email也不例外。

在android中,调用email有三种类型的intent:
intent.action_sendto 无附件的发送
intent.action_send 带附件的发送
intent.action_send_multiple 带有多附件的发送

当然,所谓的调用email,只是说email可以接收intent并做这些事情,可能也有其他的应用程序实现了相关功能,所以在执行的时候,会出现选择框进行选择。

1.使用sentto发送
[java]
复制代码 代码如下:

intent data=new intent(intent.action_sendto);
data.setdata(uri.parse("mailto:way.ping.li@gmail.com"));
data.putextra(intent.extra_subject, "这是标题");
data.putextra(intent.extra_text, "这是内容");
startactivity(data);

intent data=new intent(intent.action_sendto);
data.setdata(uri.parse("mailto:way.ping.li@gmail.com"));
data.putextra(intent.extra_subject, "这是标题");
data.putextra(intent.extra_text, "这是内容");
startactivity(data);

通过向intent中putextra来设定邮件的相关参数。

2.使用send发送
[java]
复制代码 代码如下:

intent intent = new intent(intent.action_send);
string[] tos = { "way.ping.li@gmail.com" };
string[] ccs = { "way.ping.li@gmail.com" };
string[] bccs = {"way.ping.li@gmail.com"};
intent.putextra(intent.extra_email, tos);
intent.putextra(intent.extra_cc, ccs);
intent.putextra(intent.extra_bcc, bccs);
intent.putextra(intent.extra_text, "body");
intent.putextra(intent.extra_subject, "subject");

intent.putextra(intent.extra_stream, uri.parse("file:///mnt/sdcard/a.jpg"));
intent.settype("image/*");
intent.settype("message/rfc882");
intent.createchooser(intent, "choose email client");
startactivity(intent);

intent intent = new intent(intent.action_send);
string[] tos = { "way.ping.li@gmail.com" };
string[] ccs = { "way.ping.li@gmail.com" };
string[] bccs = {"way.ping.li@gmail.com"};
intent.putextra(intent.extra_email, tos);
intent.putextra(intent.extra_cc, ccs);
intent.putextra(intent.extra_bcc, bccs);
intent.putextra(intent.extra_text, "body");
intent.putextra(intent.extra_subject, "subject");

intent.putextra(intent.extra_stream, uri.parse("file:///mnt/sdcard/a.jpg"));
intent.settype("image/*");
intent.settype("message/rfc882");
intent.createchooser(intent, "choose email client");
startactivity(intent);

很简单,发送邮件中,有收件者,抄送者,密送者。 也就是分别通过
intent.extra_email,
intent.extra_cc,
intent.extra_bcc
来进行putextra来设定的,而单个附件的发送,则使用intent.extra_stream来设置附件的地址uri。

3.使用send_multiple来进行多附件的发送
[java]
复制代码 代码如下:

intent intent = new intent(intent.action_send_multiple);
string[] tos = { "way.ping.li@gmail.com" };
string[] ccs = { "way.ping.li@gmail.com" };
intent.putextra(intent.extra_email, tos);
intent.putextra(intent.extra_cc, ccs);
intent.putextra(intent.extra_text, "body");
intent.putextra(intent.extra_subject, "subject");

arraylist<uri> imageuris = new arraylist<uri>();
imageuris.add(uri.parse("file:///mnt/sdcard/a.jpg"));
imageuris.add(uri.parse("file:///mnt/sdcard/b.jpg"));
intent.putparcelablearraylistextra(intent.extra_stream, imageuris);
intent.settype("image/*");
intent.settype("message/rfc882");
intent.createchooser(intent, "choose email client");
startactivity(intent);

intent intent = new intent(intent.action_send_multiple);
string[] tos = { "way.ping.li@gmail.com" };
string[] ccs = { "way.ping.li@gmail.com" };
intent.putextra(intent.extra_email, tos);
intent.putextra(intent.extra_cc, ccs);
intent.putextra(intent.extra_text, "body");
intent.putextra(intent.extra_subject, "subject");

arraylist<uri> imageuris = new arraylist<uri>();
imageuris.add(uri.parse("file:///mnt/sdcard/a.jpg"));
imageuris.add(uri.parse("file:///mnt/sdcard/b.jpg"));
intent.putparcelablearraylistextra(intent.extra_stream, imageuris);
intent.settype("image/*");
intent.settype("message/rfc882");
intent.createchooser(intent, "choose email client");
startactivity(intent);

发送多个附件,最主要的时候,通过putparcelablearraylistextra将多个附件的uri地址list设置进去就ok了。其实还是很简单的。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网