Android开发之发送邮件功能的实现(源代码分享)
http://www.2cto.com/kf/201408/323902.html
http://www.2cto.com/kf/201408/323902.html
http://www.2cto.com/kf/201408/323902.html
http://www.2cto.com/kf/201408/323902.html
-
Android开发中可能会碰到如何发送邮件的困扰,之前我也查了相关的文档,博友们也分享了不少的发送邮件的办法,总共有3种把,我仔细阅读了下,发现有的讲的太过复杂跟麻烦,不够清晰,我今天就来分享下我认为的最好用的办法来解决该问题,使用Andorid-MAIL Jar包。首先我们先要下载以下四个文件
然后呢在Android平台上发送邮件呢,肯定先要检查网络的状态,网络状态可用的情况下才能发送邮件成功啊(别往了获取网络信息需要在AndroidManifest.xml文件中加入相应的权限。 )
1234567891011public
boolean
isNetworkConnected(Context context) {
if
(context !=
null
) {
ConnectivityManager mConnectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();
if
(mNetworkInfo !=
null
) {
return
mNetworkInfo.isAvailable();
}
}
return
false
;
}
12345678910111213141516171819202122232425262728293031323334//与网络连接相关的操作都要在子线程中完成,当然也可以在Service服务里操作
class
sendMessage
extends
Thread {
@Override
public
void
run() {
// TODO Auto-generated method stub
super
.run();
try
{
//创建HtmlEmail类
HtmlEmail email =
new
HtmlEmail();
//填写邮件的主机明,我这里使用的是163
email.setHostName(
"smtp.163.com"
);
email.setTLS(
true
);
email.setSSL(
true
);
//设置字符编码格式,防止中文乱码
email.setCharset(
"gbk"
);
//设置收件人的邮箱
email.addTo(
"123@qq.com"
);
//设置发件人的邮箱
email.setFrom(
"123@163.com"
);
//填写发件人的用户名和密码
email.setAuthentication(
"123"
,
"123"
);
//填写邮件主题
email.setSubject(
"您好"
);
//填写邮件内容
email.setMsg(s1 +
"\n"
+ s2);
//发送邮件
email.send();
}
catch
(EmailException e) {
// TODO Auto-generated catch block
Log.i(
"TAG"
,
"---------------->"
+e.getMessage());
}
}
}
好的以上就完成了android发送邮件的功能,大家也可以去研究下其他两种发送邮件的方式。在这里分享下刚才所说的要用到的Jar包的分享地址。android发送邮件所需要的mail的jar包