项目中遇到了一个发送邮件的功能,在网上查了很多,资料也很多。这里就不一一介绍了,只是写出我使用的方案(最简单的)

  1. Intent email = new Intent(android.content.Intent.ACTION_SEND);
  2. //邮件发送类型:无附件,纯文本
  3. email.setType("plain/text");
  4. //邮件接收者(数组,可以是多位接收者)
  5. String[] emailReciver = new String[]{"123@qq.com","456@163.com"};
  6.  
  7. String emailTitle = "标题";
  8. String emailContent = "内容";
  9. //设置邮件地址
  10. email.putExtra(android.content.Intent.EXTRA_EMAIL, emailReciver);
  11. //设置邮件标题
  12. email.putExtra(android.content.Intent.EXTRA_SUBJECT, emailTitle);
  13. //设置发送的内容
  14. email.putExtra(android.content.Intent.EXTRA_TEXT, emailContent);
  15. //调用系统的邮件系统
  16. startActivity(Intent.createChooser(email, "请选择邮件发送软件"));

代码很简单,直接复制,然后修改就可以用(本人亲自试过了)。就像我说的,这是最最简单的方式了。它主要是通过调用系统的mail发送邮件。他的好处就是简单,方便。如果你安装了QQ邮箱、gmail邮箱、163邮箱的android客户端,那么在发送时,会提示你选择使用哪一个。如果你没有安装上述邮件客户端,那么,就调用系统的邮件客户端了。

下面在写一个可以发送附件的代码,当然也是这种最简单的方式

  1. Intent email = new Intent(android.content.Intent.ACTION_SEND);
  2. // 附件
  3. File file = new File(Environment.getExternalStorageDirectory().getPath()+ File.separator + "simplenote"+ File.separator+"note.xml");
  4. //邮件发送类型:带附件的邮件
  5. email.setType("application/octet-stream");
  6. //邮件接收者(数组,可以是多位接收者)
  7. String[] emailReciver = new String[]{"123@qq.com","456@163.com"};
  8.  
  9. String emailTitle = "标题";
  10. String emailContent = "内容";
  11. //设置邮件地址
  12. email.putExtra(android.content.Intent.EXTRA_EMAIL, emailReciver);
  13. //设置邮件标题
  14. email.putExtra(android.content.Intent.EXTRA_SUBJECT, emailTitle);
  15. //设置发送的内容
  16. email.putExtra(android.content.Intent.EXTRA_TEXT, emailContent);
  17. //附件
  18. email.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
  19. //调用系统的邮件系统
  20. startActivity(Intent.createChooser(email, "请选择邮件发送软件"));

通过两段代码的比较,就明白了。

  1.  

Android简单发送邮件(可带附件)的更多相关文章

  1. VC++ 使用ShellExecute函数调用邮箱客户端发送邮件(可以带附件)

      之前写过一篇博文,通过MAPI实现调用邮箱客户端发送邮件带附件,当时对ShellExecute研究不深,以为ShellExecute不能带附件,因为项目需求原因(MAPI只能调用Foxmail和O ...

  2. JavaMail发送邮件、带附件邮件(完整版)

    工程目录如下: 1.准备javaMail需要的两个Jar包:mail.jar.activation.jar,然后add to build path 2.QQ邮箱开启SMTP服务,开启后,它会给你一串授 ...

  3. CI框架发送邮件(带附件)

    最近写了一个发送带附件的邮件,发邮件挺简单的,在我这里最重要的是遇到问题,哈哈哈哈 1.主要方法看代码 public function send_mail(){ $this->load-> ...

  4. python发送邮件(带附件)

    python通过stmp发送qq邮件,带附件 import smtplib from email.mime.multipart import MIMEMultipart from email.mime ...

  5. python3发送邮件02(简单例子,带附件)

    #!/usr/bin/env python# -*- coding:UTF-8 -*- import osimport smtplibfrom email.header import Headerfr ...

  6. Jmail发送邮件与带附件乱码解决办法

    Jamil发送邮件的具体用法: 首先,我们要从网上下载Jamil.dll的组件,这个网上很多,然后添加引用using jmail,然后再本机或者服务器上注册一下 将jmail.dll拷贝到服务器的sy ...

  7. python webdriver firefox 登录126邮箱,先添加联系人,然后进入首页发送邮件,带附件。

    代码:#encoding=utf-8from selenium import webdriverfrom selenium.webdriver.common.keys import Keysfrom ...

  8. nodejs——发送邮件(带附件)

    用到的包是 nodemailer,简单,有效. 1.auth 中的 pass,是指“邮箱第三方登录授权码”,如何获取授权码,以QQ邮箱为例,请点击:http://jingyan.baidu.com/a ...

  9. Qt + CURL + mimetic 发送邮件(带附件)

    使用了大名鼎鼎的CURL 开源库,以及mimetic开源库. CURL支持N多协议.功能超强,但是不能直接发邮件附件,需要自己拼mime.太麻烦,于是乎~~ mimetic主要用于构造邮件mimeti ...

随机推荐

  1. 我展示了视频采集前端vfe和camera,decode等交互驱动的体系结构

    到现在都与处理器接触较多.更深入的驱动主要是前端视频采集.控制TI的DM64xx,DM3730.纪氏A31等待.他们发现,它们的使用的基本框架的是不一样的. 当然,典型camera例如ov系列,dec ...

  2. JavaScript中的try...catch和异常处理

    在JavaScript可以使用try...catch来进行异常处理.例如: try { foo.bar();} catch (e) { alert(e.name + ": " + ...

  3. elasticsearch的rest搜索---mapping

    目录: 一.针对这次装B 的解释 二.下载,安装插件elasticsearch-1.7.0   三.索引的mapping 四. 查询 五.对于相关度的大牛的文档 三.mapping 1. 索引的map ...

  4. cocos2d-x多分辨率和随后的自适应CCListView的bug修复

    cocos2d-x多分辨率自适配及因此导致的CCListView的bug修复 cocos2d-x是一款众所周知的跨平台的游戏开发引擎.因为其跨平台的特性.多分辨率支持也自然就有其需求. 因此.在某一次 ...

  5. JS操作cookie的实例

    <script type="text/javascript"> //写cookies函数 function SetCookie(name, value)//两个参数,一 ...

  6. 什么是EF, 和 Entity Framework Demo简单构建一个良好的发展环境

     Entity Framwork(实体框架.缩写EF)这是ORM(Object Relational Mapping.对象映射关系)一个解决方案. EF的表映射为实体.并封装了操作方法.方便开发者 ...

  7. C#实现Web文件上传的两种方法

    1. C#实现Web文件的上传 在Web编程中,我们常需要把一些本地文件上传到Web服务器上,上传后,用户可以通过浏览器方便地浏览这些文件,应用十分广泛. 那么使用C#如何实现文件上传的功能呢?下面笔 ...

  8. android数据库升级的措辞

    在基类table增加upgrade操作: public abstract class DbBaseTable { private static final String TAG = "DbB ...

  9. 我的Android 4 学习系列之数据库和Content Provider

    目录 创建数据库和使用SQLite 使用Content Provider.Cusor和Content Value来存储.共享和使用应用程序数据 使用Cursor Loader异步查询Content P ...

  10. iOS:由URL成员UIImage

    很多时候,我们只能得到URL.然后,需要建立一个UIImage. 在正常情况下,.我们一般通过SDWebImage直接施工UIImageVIew的image,如何使用URL直接施工UIImage它? ...