Pro Android学习笔记(一二二):Telephony API(4):发Email

本文介绍了在Android中如何使用Intent来发送电子邮件,包括不同Intent动作的使用方法及其参数说明,并提供了具体的代码实例。

文章转载只能用于非商业性质,且不能带有虚拟货币、积分、注册等附加条件。转载须注明出处http://blog.csdn.net/flowingflying以及作者@恺风Wei

发Email不属于Telephony API,但作为常用通信的方式,也在此提及。Android通过intent调用Email App应用的方式进行短信发送。如果我们开发办公软件,Email还是常用的功能。代码例子如下:

private void sendEmailTest(){
    Intent emailIntent = new Intent(Intent.ACTION_SEND);
   
    String subject = "Hi!";
    String body = "Hello from android...";
    String[] extra = new String[]{"aaa@xxx.com","bbb@yyy.com"};
   
    emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
    emailIntent.putExtra(Intent.EXTRA_TEXT, body);
    emailIntent.putExtra(Intent.EXTRA_EMAIL, extra);
    emailIntent.setType("message/rfc822");
    startActivity(emailIntent);       
}

发送邮件有Intent.ACTION_SENDTO,Intent.ACTION_SEND和Intent.ACTION_SEND_MULTIPUL。他们所携带Email的参数会有所不同。下面是ACTION_SENDTO的例子:

Intent emailIntent = new Intent(Intent.ACTION_SENDTO);

String subject = "Hi!";
String body = "Hello from android...";

emailIntent.setData(Uri.parse("mailto:abcd@qq.com"));
emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(Intent.EXTRA_TEXT, body);
startActivity(emailIntent);   

ACTION_SENDTO不携带附件,ACTION_SEND可携带一个附件,ACTION_SEND_MULTIPUL可以携带多个附件。但是无论使用哪种方式,最终都会调用Email APP的,用户都可以在Email App中添加自己所需要的附件。详细的可以阅读http://www.2cto.com/kf/201209/153859.html

常用的参数还有Intent.EXTRA_CC和Intent.EXTRA_BCC。对于ACTION_SEND,携带附件的方式如下:

emailIntent.putExtra(Intent.EXTRA_STREAM,Uri.fromFile(new File(myFileName)));

小例子代码在:Pro Android学习:telephony小例子

相关链接:我的Android开发相关文章

【源码免费下载链接】:https://renmaiwang.cn/s/crcx8 AmaterasUML是一款专为Eclipse集成开环境设计的自动UML工具,它极大地简化了软件开者在编码过程中创建和维护UML模型的过程。UML(统一建模语言)是一种标准化的图形表示法,用于描述软件系统的设计、结构和行为,是软件工程中的重要工具。通过使用AmaterasUML,开者可以快速地从源代码自动生成UML类图、序列图和其他相关图表,从而更好地理解和管理项目结构。AmaterasUML支持的主要功能包括:1. **源码到UML的转换**:这个工具能够分析Java源代码,并自动将其转换为符合UML规范的类图。开者无需手动绘制,只需专注于编写代码,AmaterasUML就能帮助你可视化代码结构。2. **实时更新**:当源代码生变化时,AmaterasUML会自动检测并更新对应的UML图,保持图表与代码的一致性,减少了因手动调整而产生的错误。3. **多种UML图**:除了基本的类图,AmaterasUML还支持生成用例图、序列图、状态图和活动图等多种UML图表,覆盖了软件开的多个方面,有助于全面理解系统设计。4. **交互式编辑**:用户不仅可以从代码生成UML,还可以反过来从UML图中生成或修改代码,实现双向工程,提高开效率。5. **团队协作**:由于AmaterasUML与Eclipse的紧密集成,它可以无缝地融入到版本控制系统(如Git)中,方便团队成员共享和审查UML模型,促进协同开。6. **定制化设置**:根据项目需求,用户可以自定义生成的UML图的显示样式和细节级别,使得图表更加符合个人或团队的风格。7. **易于集成**:作为Eclipse插件,AmaterasUML安装简单,只需在Eclipse Marketplace中搜索并安装即可,无需额外配置。8
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值