Android调用系统的发邮件功能的小例子
时间:2022-09-09 04:23:11
package com.example.myapi.email;
import java.util.ArrayList;
import java.util.List;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
public class SendEmailUtils {
private SendEmailUtils(){}
private static SendEmailUtils instance;
public static SendEmailUtils getInstance(){
synchronized (SendEmailUtils.class) {
if(instance == null){
instance = new SendEmailUtils();
}
}
return instance;
}
/**
* 这是一个简单的测试,不支持带附件,多人,抄送发送等。
* @param context
*/
public void sendEmail(Context context){
Intent intent = new Intent();
intent.setData(Uri.parse("mailto:"));
/*设置邮件的标题*/
intent.putExtra(Intent.EXTRA_SUBJECT, "别紧张,这仅仅是一个测试!");
/*设置邮件的内容*/
intent.putExtra(Intent.EXTRA_TEXT, "测试打开系统邮箱并将发送的标题和内容自动填充到邮箱,并发送邮件,");
//开始调用
context.startActivity(intent);
}
/**
* 发邮件,带抄送,和密送,并带上个附件
* @param context
*/
public void sendEmailDuo(Context context){
Intent intent = new Intent(Intent.ACTION_SEND);
// intent.setData(Uri.parse("mailto:"));
String[] tos = { "yw.1@163.com" };
String[] ccs = { "yw.2@163.com" };
String[] bccs = {"yw.3@163.com"};
intent.putExtra(Intent.EXTRA_EMAIL, tos); //收件者
intent.putExtra(Intent.EXTRA_CC, ccs); //抄送这
intent.putExtra(Intent.EXTRA_BCC, bccs); //密送这
intent.putExtra(Intent.EXTRA_TEXT, "邮件内容");
intent.putExtra(Intent.EXTRA_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");
context.startActivity(intent);
}
/**
* 多附件发送
* @param conext
*/
public void sendFujian(Context conext){
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");
List<Uri> imageUris = new ArrayList<Uri>();
imageUris.add(Uri.parse("file:///mnt/sdcard/a.jpg"));
imageUris.add(Uri.parse("file:///mnt/sdcard/b.jpg"));
intent.putExtra(Intent.EXTRA_STREAM, imageUris);
intent.setType("image/*");
intent.setType("message/rfc882");
Intent.createChooser(intent, "Choose Email Client");
conext.startActivity(intent);
}
}
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
c# 用Dictionary实现日志数据批量插入
C#中const用法详解
Java 中的位运算与移位运算详解
Java定时器Timer使用方法详解
![](https://img.aspxhome.com/file/2023/8/76528_0s.png)
Spring Boot缓存实战 EhCache示例
![](https://img.aspxhome.com/file/2023/3/58213_0s.png)
如何让Spring Rest 接口中路径参数可选
![](https://img.aspxhome.com/file/2023/4/104044_0s.png)
C#中事务处理和非事务处理方法实例分析
Kotlin this详解及实例
c#.net多线程编程教学——线程同步
mybatis中映射文件(mapper)中的使用规则
![](https://img.aspxhome.com/file/2023/8/76248_0s.png)
UGUI ScrollRect滑动定位优化详解
![](https://img.aspxhome.com/file/2023/5/94605_0s.jpg)
浅谈collection标签的oftype属性能否为java.util.Map
![](https://img.aspxhome.com/file/2023/8/97818_0s.png)
mybatis 实现多层级collection嵌套
![](https://img.aspxhome.com/file/2023/1/122201_0s.png)
java 获取日期的几天前,几个月前和几年前的实例
Tornadofx学习笔记之IconTextFx开源库整合5000+个字体图标
![](https://img.aspxhome.com/file/2023/8/77338_0s.jpg)
Java基于websocket协议与netty实时视频弹幕交互实现
![](https://img.aspxhome.com/file/2023/1/96261_0s.png)
java实现二分法的完整代码
10张图总结出并发编程最佳学习路线
![](https://img.aspxhome.com/file/2023/2/77342_0s.jpg)
Java验证码功能的实现方法
![](https://img.aspxhome.com/file/2023/4/92724_0s.gif)