新增:Email发送通道的发件人昵称支持插入标签
This commit is contained in:
parent
0c852fc4ed
commit
b0465eec54
|
@ -159,6 +159,10 @@ class EmailFragment : BaseFragment<FragmentSendersEmailBinding?>(), View.OnClick
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun initListeners() {
|
override fun initListeners() {
|
||||||
|
binding!!.btInsertSenderToNickname.setOnClickListener(this)
|
||||||
|
binding!!.btInsertExtraToNickname.setOnClickListener(this)
|
||||||
|
binding!!.btInsertTimeToNickname.setOnClickListener(this)
|
||||||
|
binding!!.btInsertDeviceNameToNickname.setOnClickListener(this)
|
||||||
binding!!.btInsertSender.setOnClickListener(this)
|
binding!!.btInsertSender.setOnClickListener(this)
|
||||||
binding!!.btInsertExtra.setOnClickListener(this)
|
binding!!.btInsertExtra.setOnClickListener(this)
|
||||||
binding!!.btInsertTime.setOnClickListener(this)
|
binding!!.btInsertTime.setOnClickListener(this)
|
||||||
|
@ -171,8 +175,25 @@ class EmailFragment : BaseFragment<FragmentSendersEmailBinding?>(), View.OnClick
|
||||||
@SingleClick
|
@SingleClick
|
||||||
override fun onClick(v: View) {
|
override fun onClick(v: View) {
|
||||||
try {
|
try {
|
||||||
|
val etNickname: EditText = binding!!.etNickname
|
||||||
val etTitleTemplate: EditText = binding!!.etTitleTemplate
|
val etTitleTemplate: EditText = binding!!.etTitleTemplate
|
||||||
when (v.id) {
|
when (v.id) {
|
||||||
|
R.id.bt_insert_sender_to_nickname -> {
|
||||||
|
CommonUtils.insertOrReplaceText2Cursor(etNickname, getString(R.string.tag_from))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
R.id.bt_insert_extra_to_nickname -> {
|
||||||
|
CommonUtils.insertOrReplaceText2Cursor(etNickname, getString(R.string.tag_card_slot))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
R.id.bt_insert_time_to_nickname -> {
|
||||||
|
CommonUtils.insertOrReplaceText2Cursor(etNickname, getString(R.string.tag_receive_time))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
R.id.bt_insert_device_name_to_nickname -> {
|
||||||
|
CommonUtils.insertOrReplaceText2Cursor(etNickname, getString(R.string.tag_device_name))
|
||||||
|
return
|
||||||
|
}
|
||||||
R.id.bt_insert_sender -> {
|
R.id.bt_insert_sender -> {
|
||||||
CommonUtils.insertOrReplaceText2Cursor(etTitleTemplate, getString(R.string.tag_from))
|
CommonUtils.insertOrReplaceText2Cursor(etTitleTemplate, getString(R.string.tag_from))
|
||||||
return
|
return
|
||||||
|
|
|
@ -11,6 +11,7 @@ data class Mail(
|
||||||
var mailServerHost: String = "", // 发件箱邮箱服务器地址
|
var mailServerHost: String = "", // 发件箱邮箱服务器地址
|
||||||
var mailServerPort: String = "", // 发件箱邮箱服务器端口
|
var mailServerPort: String = "", // 发件箱邮箱服务器端口
|
||||||
var fromAddress: String = "", // 发件箱
|
var fromAddress: String = "", // 发件箱
|
||||||
|
var fromNickname: String = "", // 发件人昵称
|
||||||
var password: String = "", // 发件箱授权码(密码)
|
var password: String = "", // 发件箱授权码(密码)
|
||||||
|
|
||||||
var toAddress: ArrayList<String> = ArrayList(), // 直接收件人邮箱
|
var toAddress: ArrayList<String> = ArrayList(), // 直接收件人邮箱
|
||||||
|
|
|
@ -3,6 +3,8 @@ package com.idormy.sms.forwarder.utils.mail
|
||||||
import android.text.Html
|
import android.text.Html
|
||||||
import android.text.Spanned
|
import android.text.Spanned
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
|
import com.xuexiang.xrouter.utils.TextUtils
|
||||||
|
import java.io.UnsupportedEncodingException
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import javax.activation.DataHandler
|
import javax.activation.DataHandler
|
||||||
import javax.activation.FileDataSource
|
import javax.activation.FileDataSource
|
||||||
|
@ -45,7 +47,16 @@ object MailUtil {
|
||||||
return MimeMessage(session).apply {
|
return MimeMessage(session).apply {
|
||||||
|
|
||||||
// 设置发件箱
|
// 设置发件箱
|
||||||
|
if (TextUtils.isEmpty(mail.fromNickname)) {
|
||||||
setFrom(InternetAddress(mail.fromAddress))
|
setFrom(InternetAddress(mail.fromAddress))
|
||||||
|
} else {
|
||||||
|
val nickname = try {
|
||||||
|
MimeUtility.encodeText(mail.fromNickname)
|
||||||
|
} catch (e: UnsupportedEncodingException) {
|
||||||
|
e.printStackTrace()
|
||||||
|
}
|
||||||
|
setFrom(InternetAddress("$nickname <${mail.fromAddress}>"))
|
||||||
|
}
|
||||||
|
|
||||||
// 设置直接接收者收件箱
|
// 设置直接接收者收件箱
|
||||||
val toAddress = mail.toAddress.map {
|
val toAddress = mail.toAddress.map {
|
||||||
|
|
|
@ -120,6 +120,7 @@ class EmailUtils {
|
||||||
mailServerHost = setting.host.toString()
|
mailServerHost = setting.host.toString()
|
||||||
mailServerPort = setting.port.toString()
|
mailServerPort = setting.port.toString()
|
||||||
fromAddress = setting.fromEmail.toString()
|
fromAddress = setting.fromEmail.toString()
|
||||||
|
fromNickname = msgInfo.getTitleForSend(setting.nickname.toString())
|
||||||
password = setting.pwd.toString()
|
password = setting.pwd.toString()
|
||||||
toAddress = arrayListOf(setting.toEmail.toString())
|
toAddress = arrayListOf(setting.toEmail.toString())
|
||||||
subject = title
|
subject = title
|
||||||
|
|
|
@ -115,7 +115,13 @@
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
android:id="@+id/layout_sms_template_to_nickname"
|
||||||
style="@style/senderBarStyle"
|
style="@style/senderBarStyle"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="horizontal">
|
android:orientation="horizontal">
|
||||||
|
@ -126,15 +132,52 @@
|
||||||
android:text="@string/email_nickname"
|
android:text="@string/email_nickname"
|
||||||
android:textStyle="bold" />
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<com.xuexiang.xui.widget.edittext.materialedittext.MaterialEditText
|
<TextView
|
||||||
android:id="@+id/et_nickname"
|
android:layout_width="wrap_content"
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginStart="5dp"
|
android:layout_marginStart="5dp"
|
||||||
android:layout_weight="1"
|
android:text="@string/custom_template_tips"
|
||||||
|
android:textSize="11sp" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<com.xuexiang.xui.widget.edittext.materialedittext.MaterialEditText
|
||||||
|
android:id="@+id/et_nickname"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
app:met_clearButton="true" />
|
app:met_clearButton="true" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
||||||
|
android:id="@+id/bt_insert_sender_to_nickname"
|
||||||
|
style="@style/insertButtonStyle"
|
||||||
|
android:text="@string/insert_sender" />
|
||||||
|
|
||||||
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
||||||
|
android:id="@+id/bt_insert_extra_to_nickname"
|
||||||
|
style="@style/insertButtonStyle"
|
||||||
|
android:layout_marginStart="5dp"
|
||||||
|
android:text="@string/insert_extra" />
|
||||||
|
|
||||||
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
||||||
|
android:id="@+id/bt_insert_time_to_nickname"
|
||||||
|
style="@style/insertButtonStyle"
|
||||||
|
android:layout_marginStart="5dp"
|
||||||
|
android:text="@string/insert_time" />
|
||||||
|
|
||||||
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
||||||
|
android:id="@+id/bt_insert_device_name_to_nickname"
|
||||||
|
style="@style/insertButtonStyle"
|
||||||
|
android:layout_marginStart="5dp"
|
||||||
|
android:text="@string/insert_device_name" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
|
Loading…
Reference in New Issue