mirror of
https://gitee.com/pp/SmsForwarder.git
synced 2026-09-03 05:24:33 +08:00
优化: 电子邮箱 增加 发件邮箱别名 设置 #660
This commit is contained in:
@@ -18,6 +18,7 @@ data class EmailSetting(
|
||||
var keystore: String = "",
|
||||
var password: String = "",
|
||||
var encryptionProtocol: String = "Plain", //加密协议: S/MIME、OpenPGP、Plain(不传证书)
|
||||
var fromEmailAlias: String = "", //发件邮箱别名
|
||||
) : Serializable {
|
||||
|
||||
fun getEncryptionProtocolCheckId(): Int {
|
||||
|
||||
@@ -212,6 +212,7 @@ class EmailFragment : BaseFragment<FragmentSendersEmailBinding?>(), View.OnClick
|
||||
}
|
||||
binding!!.etFromEmail.setText(settingVo.fromEmail)
|
||||
binding!!.etPwd.setText(settingVo.pwd)
|
||||
binding!!.etFromEmailAlias.setText(settingVo.fromEmailAlias)
|
||||
binding!!.etNickname.setText(settingVo.nickname)
|
||||
binding!!.etHost.setText(settingVo.host)
|
||||
binding!!.etPort.setText(settingVo.port)
|
||||
@@ -419,6 +420,7 @@ class EmailFragment : BaseFragment<FragmentSendersEmailBinding?>(), View.OnClick
|
||||
throw Exception(getString(R.string.invalid_email_server))
|
||||
}
|
||||
|
||||
val fromEmailAlias = binding!!.etFromEmailAlias.text.toString().trim()
|
||||
val nickname = binding!!.etNickname.text.toString().trim()
|
||||
val ssl = binding!!.sbSsl.isChecked
|
||||
val startTls = binding!!.sbStartTls.isChecked
|
||||
@@ -464,7 +466,7 @@ class EmailFragment : BaseFragment<FragmentSendersEmailBinding?>(), View.OnClick
|
||||
|
||||
}
|
||||
|
||||
return EmailSetting(mailType, fromEmail, pwd, nickname, host, port, ssl, startTls, title, recipients, "", keystore, password, encryptionProtocol)
|
||||
return EmailSetting(mailType, fromEmail, pwd, nickname, host, port, ssl, startTls, title, recipients, "", keystore, password, encryptionProtocol, fromEmailAlias)
|
||||
}
|
||||
|
||||
//recipient序号
|
||||
|
||||
@@ -22,6 +22,7 @@ class EmailSender(
|
||||
private val from: String, // 发件人邮箱
|
||||
private val password: String, // 发件人邮箱密码/授权码
|
||||
// 邮件参数
|
||||
private val fromAlias: String, // 发件人邮箱别名
|
||||
private val nickname: String, // 发件人昵称
|
||||
private val subject: String, // 邮件主题
|
||||
private val body: CharSequence, // 邮件正文
|
||||
@@ -88,6 +89,7 @@ class EmailSender(
|
||||
properties,
|
||||
authenticator,
|
||||
from,
|
||||
fromAlias,
|
||||
nickname,
|
||||
subject,
|
||||
html,
|
||||
@@ -117,6 +119,7 @@ class EmailSender(
|
||||
properties,
|
||||
authenticator,
|
||||
from,
|
||||
fromAlias,
|
||||
nickname,
|
||||
subject,
|
||||
html,
|
||||
@@ -146,6 +149,7 @@ class EmailSender(
|
||||
properties,
|
||||
authenticator,
|
||||
from,
|
||||
fromAlias,
|
||||
nickname,
|
||||
subject,
|
||||
html,
|
||||
|
||||
@@ -42,6 +42,7 @@ class PgpUtils(
|
||||
private val authenticator: Authenticator,
|
||||
// 邮件参数
|
||||
private val from: String, // 发件人邮箱
|
||||
private val fromAlias: String, // 发件人邮箱别名
|
||||
private val nickname: String, // 发件人昵称
|
||||
private val subject: String, // 邮件主题
|
||||
private val body: String, // 邮件正文
|
||||
@@ -149,14 +150,14 @@ class PgpUtils(
|
||||
message.setRecipients(Message.RecipientType.BCC, bccAddress)
|
||||
// 设置发件箱
|
||||
when {
|
||||
nickname.isEmpty() -> message.setFrom(InternetAddress(from))
|
||||
nickname.isEmpty() -> message.setFrom(InternetAddress(fromAlias))
|
||||
else -> try {
|
||||
var name = nickname.replace(":", "-").replace("\n", "-")
|
||||
name = MimeUtility.encodeText(name)
|
||||
message.setFrom(InternetAddress("$name <$from>"))
|
||||
message.setFrom(InternetAddress("$name <$fromAlias>"))
|
||||
} catch (e: Exception) {
|
||||
e.printStackTrace()
|
||||
message.setFrom(InternetAddress(from))
|
||||
message.setFrom(InternetAddress(fromAlias))
|
||||
}
|
||||
}
|
||||
// 邮件主题
|
||||
|
||||
@@ -43,6 +43,7 @@ class SmimeUtils(
|
||||
private val authenticator: Authenticator,
|
||||
// 邮件参数
|
||||
private val from: String, // 发件人邮箱
|
||||
private val fromAlias: String, // 发件人邮箱别名
|
||||
private val nickname: String, // 发件人昵称
|
||||
private val subject: String, // 邮件主题
|
||||
private val body: String, // 邮件正文
|
||||
@@ -135,14 +136,14 @@ class SmimeUtils(
|
||||
message.setRecipients(Message.RecipientType.BCC, bccAddress)
|
||||
// 设置发件箱
|
||||
when {
|
||||
nickname.isEmpty() -> message.setFrom(InternetAddress(from))
|
||||
nickname.isEmpty() -> message.setFrom(InternetAddress(fromAlias))
|
||||
else -> try {
|
||||
var name = nickname.replace(":", "-").replace("\n", "-")
|
||||
name = MimeUtility.encodeText(name)
|
||||
message.setFrom(InternetAddress("$name <$from>"))
|
||||
message.setFrom(InternetAddress("$name <$fromAlias>"))
|
||||
} catch (e: Exception) {
|
||||
e.printStackTrace()
|
||||
message.setFrom(InternetAddress(from))
|
||||
message.setFrom(InternetAddress(fromAlias))
|
||||
}
|
||||
}
|
||||
// 邮件主题
|
||||
|
||||
@@ -156,6 +156,9 @@ class EmailUtils {
|
||||
val port = setting.port
|
||||
val from = setting.fromEmail
|
||||
val password = setting.pwd
|
||||
val fromAlias = setting.fromEmailAlias.ifEmpty {
|
||||
setting.fromEmail
|
||||
}
|
||||
val nickname = msgInfo.getTitleForSend(setting.nickname)
|
||||
setting.recipients.ifEmpty {
|
||||
//兼容旧的设置
|
||||
@@ -297,6 +300,7 @@ class EmailUtils {
|
||||
port,
|
||||
from,
|
||||
password,
|
||||
fromAlias,
|
||||
nickname,
|
||||
title,
|
||||
content,
|
||||
@@ -323,6 +327,7 @@ class EmailUtils {
|
||||
port,
|
||||
from,
|
||||
password,
|
||||
fromAlias,
|
||||
nickname,
|
||||
title,
|
||||
content,
|
||||
|
||||
@@ -114,6 +114,30 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
style="@style/BarStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/email_from_alias"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<com.xuexiang.xui.widget.edittext.materialedittext.MaterialEditText
|
||||
android:id="@+id/et_from_email_alias"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="5dp"
|
||||
android:layout_weight="1"
|
||||
android:hint="@string/email_from_alias_tips"
|
||||
android:singleLine="true"
|
||||
app:met_clearButton="true" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/layout_sms_template_to_nickname"
|
||||
style="@style/BarStyle"
|
||||
|
||||
@@ -264,6 +264,8 @@
|
||||
<string name="enable_starttls">Enable StartTLS</string>
|
||||
<string name="email_account">Account</string>
|
||||
<string name="email_password">Password/Auth Code</string>
|
||||
<string name="email_from_alias">From Email Alias</string>
|
||||
<string name="email_from_alias_tips">Opt., used to display From Address</string>
|
||||
<string name="email_nickname">Nickname</string>
|
||||
<string name="email_to">Recipients</string>
|
||||
<string name="email_to_tips">Tip: Click to add recipients.</string>
|
||||
|
||||
@@ -265,6 +265,8 @@
|
||||
<string name="enable_starttls">开启StartTLS</string>
|
||||
<string name="email_account">发件邮箱</string>
|
||||
<string name="email_password">登录密码</string>
|
||||
<string name="email_from_alias">发件邮箱别名</string>
|
||||
<string name="email_from_alias_tips">可选, 用于显示发件人地址</string>
|
||||
<string name="email_nickname">发件人昵称</string>
|
||||
<string name="email_to">收件人邮箱</string>
|
||||
<string name="email_to_tips">Tip: 点击按钮添加收件人邮箱</string>
|
||||
|
||||
@@ -265,6 +265,8 @@
|
||||
<string name="enable_starttls">開啟StartTLS</string>
|
||||
<string name="email_account">發件郵箱</string>
|
||||
<string name="email_password">登錄密碼</string>
|
||||
<string name="email_from_alias">發件郵箱別名</string>
|
||||
<string name="email_from_alias_tips">選填,用於顯示發件人地址</string>
|
||||
<string name="email_nickname">發件人昵稱</string>
|
||||
<string name="email_to">收件人郵箱</string>
|
||||
<string name="email_to_tips">提示:點擊按鈕添加收件人郵箱</string>
|
||||
|
||||
@@ -294,6 +294,8 @@
|
||||
<string name="enable_starttls">开启StartTLS</string>
|
||||
<string name="email_account">发件邮箱</string>
|
||||
<string name="email_password">登录密码</string>
|
||||
<string name="email_from_alias">发件邮箱别名</string>
|
||||
<string name="email_from_alias_tips">可选, 用于显示发件人地址</string>
|
||||
<string name="email_nickname">发件人昵称</string>
|
||||
<string name="email_to">收件人邮箱</string>
|
||||
<string name="email_to_tips">Tip: 点击按钮添加收件人邮箱</string>
|
||||
|
||||
Reference in New Issue
Block a user