Android用JavaMail发送邮件
2015-10-10 09:22
459 查看
有一个需要:当Android程序异常退出的时候把日志啊、堆栈信息整成一个邮件,发给指定邮箱。粗一搜都是用Intent的方式——但这不符合我们的需要,我们并不需要使用用户的邮箱来发送,也不关心用户是否有配置邮箱,只要用户能上网,直接把smtp报文扔给服务器即可。
传统Java程序如果想达到这个目的,可以使用JavaMail,但直接把代码撸来,发现Android
sdk中没有javax.mail.*,泪流满面。继续搜索,发现Java界果然好人众多,方法如下:
1)去http://code.google.com/p/javamail-android/,下载additionnal.jar、mail.jar、activation.jar
三个包,扔到项目路径下的某个自定义路径。
2)eclipse,编辑项目,Add Jars,把那三个jar包都添加了。
3)加入一下两个原文件
=======代码分割线,版权声明:基本是撸来的,略作改动,请君自便=======
import java.security.AccessController;
import java.security.Provider;
public final class JSSEProvider extends Provider {
private
static final long serialVersionUID = 1L;
public
JSSEProvider() {
super("HarmonyJSSE", 1.0, "Harmony JSSE Provider");
AccessController
.doPrivileged(new
java.security.PrivilegedAction<Void>()
{
public Void
run() {
put("SSLContext.TLS",
"org.apache.harmony.xnet.provider.jsse.SSLContextImpl");
put("Alg.Alias.SSLContext.TLSv1", "TLS");
put("KeyManagerFactory.X509",
"org.apache.harmony.xnet.provider.jsse.KeyManagerFactoryImpl");
put("TrustManagerFactory.X509",
"org.apache.harmony.xnet.provider.jsse.TrustManagerFactoryImpl");
return
null;
}
});
}
}
=====================================================================
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.inte
4000
rnet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.security.Security;
import java.util.Properties;
public class MailSender extends javax.mail.Authenticator {
private
String user;
private
String password;
private
Session session;
相关文章推荐
- Android2.2 Socket关闭Bug的解决方…
- Android开发之中文语音朗读
- Android 中 Fragment的使用大全
- android:inputType常用取值
- android drawable
- android drawable
- android drawable
- 修改Android模拟器的system分区,以及加入SuperSU
- 50 android hacks(hack 16)
- android dnk 引导
- android 中ListView中的adapter详解
- Android自定义view之绘制实用型的柱形图和折线图
- Android listview与adapter用法
- android 定位
- android之4.0的系统主题style修改android:Theme.Holo.Light
- Android 项目(详解一)——项目流程
- Android "QR二维码扫描"
- Android Api Demos登顶之路(九十一)Graphics-->TouchPaint
- 利用 Android Annotations 来玩玩契约编程
- Android开发菜鸟级入门3--定时器