You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
148 lines
3.5 KiB
Java
148 lines
3.5 KiB
Java
package com.idormy.sms.forwarder.utils;
|
|
|
|
import android.util.Log;
|
|
|
|
import com.sun.mail.util.MailSSLSocketFactory;
|
|
|
|
import java.security.GeneralSecurityException;
|
|
import java.util.Properties;
|
|
|
|
public class MailSenderInfo {
|
|
private static String TAG = "MailSenderInfo";
|
|
// 发送邮件的服务器的IP和端口
|
|
private String mailServerHost;
|
|
private String mailServerPort = "25";
|
|
|
|
// 邮件发送者的地址
|
|
private String fromAddress;
|
|
// 邮件接收者的地址
|
|
private String toAddress;
|
|
// 登陆邮件发送服务器的用户名和密码
|
|
private String userName;
|
|
private String password;
|
|
// 是否需要身份验证
|
|
private boolean validate = true;
|
|
//开启ssl
|
|
private boolean ssl = true;
|
|
// 邮件主题
|
|
private String subject;
|
|
// 邮件的文本内容
|
|
private String content;
|
|
// 邮件附件的文件名
|
|
private String[] attachFileNames;
|
|
|
|
/**
|
|
* 获得邮件会话属性
|
|
*/
|
|
public Properties getProperties() {
|
|
Properties props = new Properties();
|
|
props.put("mail.smtp.host", this.mailServerHost);
|
|
props.put("mail.smtp.port", this.mailServerPort);
|
|
props.put("mail.smtp.auth", validate ? "true" : "false");
|
|
|
|
if (ssl) {
|
|
try {
|
|
MailSSLSocketFactory sf = new MailSSLSocketFactory();
|
|
sf.setTrustAllHosts(true);
|
|
props.put("mail.smtp.ssl.enable", "true");
|
|
props.put("mail.smtp.ssl.socketFactory", sf);
|
|
Log.i(TAG, "set ssl success");
|
|
} catch (GeneralSecurityException e) {
|
|
Log.e(TAG, "set ssl fail: " + e.getMessage());
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
return props;
|
|
}
|
|
|
|
public String getMailServerHost() {
|
|
return mailServerHost;
|
|
}
|
|
|
|
public void setMailServerHost(String mailServerHost) {
|
|
this.mailServerHost = mailServerHost;
|
|
}
|
|
|
|
public String getMailServerPort() {
|
|
return mailServerPort;
|
|
}
|
|
|
|
public void setMailServerPort(String mailServerPort) {
|
|
this.mailServerPort = mailServerPort;
|
|
}
|
|
|
|
public boolean isValidate() {
|
|
return validate;
|
|
}
|
|
|
|
public void setValidate(boolean validate) {
|
|
this.validate = validate;
|
|
}
|
|
|
|
public String[] getAttachFileNames() {
|
|
return attachFileNames;
|
|
}
|
|
|
|
public void setAttachFileNames(String[] fileNames) {
|
|
this.attachFileNames = fileNames;
|
|
}
|
|
|
|
public String getFromAddress() {
|
|
return fromAddress;
|
|
}
|
|
|
|
public void setFromAddress(String fromAddress) {
|
|
this.fromAddress = fromAddress;
|
|
}
|
|
|
|
public String getPassword() {
|
|
return password;
|
|
}
|
|
|
|
public void setPassword(String password) {
|
|
this.password = password;
|
|
}
|
|
|
|
public String getToAddress() {
|
|
return toAddress;
|
|
}
|
|
|
|
public void setToAddress(String toAddress) {
|
|
this.toAddress = toAddress;
|
|
}
|
|
|
|
public String getUserName() {
|
|
return userName;
|
|
}
|
|
|
|
public void setUserName(String userName) {
|
|
this.userName = userName;
|
|
}
|
|
|
|
public String getSubject() {
|
|
return subject;
|
|
}
|
|
|
|
public void setSubject(String subject) {
|
|
this.subject = subject;
|
|
}
|
|
|
|
public String getContent() {
|
|
return content;
|
|
}
|
|
|
|
public void setContent(String textContent) {
|
|
this.content = textContent;
|
|
}
|
|
|
|
public boolean isSsl() {
|
|
return ssl;
|
|
}
|
|
|
|
public void setSsl(boolean ssl) {
|
|
this.ssl = ssl;
|
|
}
|
|
}
|
|
|