新增:`{{通知Schema}}`(英文系统`{{SCHEMA}}`)标签以获取应用通知的Schema(试验性) #272 #276

pull/286/head
pppscn 2 years ago
parent 621ab87463
commit 1a527a3fc8

@ -39,13 +39,17 @@ data class MsgInfo(
if (TextUtils.isEmpty(template)) template = getString(R.string.tag_from)
val deviceMark = extraDeviceMark.trim()
val versionName = AppUtils.getAppVersionName()
val splitSimInfo = simInfo.split("#####")
val title = splitSimInfo.getOrElse(0) { simInfo }
val schema = splitSimInfo.getOrElse(1) { "" }
val titleForSend: String = template.replace(getString(R.string.tag_from), from)
.replace(getString(R.string.tag_package_name), from)
.replace(getString(R.string.tag_sms), content)
.replace(getString(R.string.tag_msg), content)
.replace(getString(R.string.tag_card_slot), simInfo)
.replace(getString(R.string.tag_card_slot), title)
.replace(getString(R.string.tag_card_subid), subId.toString())
.replace(getString(R.string.tag_title), simInfo)
.replace(getString(R.string.tag_title), title)
.replace(getString(R.string.tag_schema), schema)
.replace(getString(R.string.tag_receive_time), SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date))
.replace(getString(R.string.tag_device_name), deviceMark)
.replace(getString(R.string.tag_app_version), versionName)
@ -81,13 +85,17 @@ data class MsgInfo(
}
}
val versionName = AppUtils.getAppVersionName()
val splitSimInfo = simInfo.split("#####")
val title = splitSimInfo.getOrElse(0) { simInfo }
val schema = splitSimInfo.getOrElse(1) { "" }
val smsVoForSend: String = customSmsTemplate.replace(getString(R.string.tag_from), from)
.replace(getString(R.string.tag_package_name), from)
.replace(getString(R.string.tag_sms), content)
.replace(getString(R.string.tag_msg), content)
.replace(getString(R.string.tag_card_slot), simInfo)
.replace(getString(R.string.tag_card_slot), title)
.replace(getString(R.string.tag_card_subid), subId.toString())
.replace(getString(R.string.tag_title), simInfo)
.replace(getString(R.string.tag_title), title)
.replace(getString(R.string.tag_schema), schema)
.replace(getString(R.string.tag_receive_time), SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date))
.replace(getString(R.string.tag_device_name), deviceMark)
.replace(getString(R.string.tag_app_version), versionName)

@ -105,8 +105,19 @@ class LogsFragment : BaseFragment<FragmentLogsBinding?>(), MsgPagingAdapter.OnIt
val detailStr = StringBuilder()
detailStr.append(ResUtils.getString(R.string.from)).append(item.msg.from).append("\n\n")
detailStr.append(ResUtils.getString(R.string.msg)).append(item.msg.content).append("\n\n")
if (!TextUtils.isEmpty(item.msg.simInfo)) detailStr.append(ResUtils.getString(R.string.slot)).append(item.msg.simInfo).append("\n\n")
if (!TextUtils.isEmpty(item.msg.simInfo)) {
if (item.msg.type == "app") {
val splitSimInfo = item.msg.simInfo.split("#####")
val title = splitSimInfo.getOrElse(0) { item.msg.simInfo }
val schema = splitSimInfo.getOrElse(1) { "" }
detailStr.append(ResUtils.getString(R.string.title)).append(title).append("\n\n")
detailStr.append(ResUtils.getString(R.string.msg)).append(item.msg.content).append("\n\n")
if (!TextUtils.isEmpty(schema) && schema != "null") detailStr.append(ResUtils.getString(R.string.schema)).append(schema).append("\n\n")
} else {
detailStr.append(ResUtils.getString(R.string.msg)).append(item.msg.content).append("\n\n")
detailStr.append(ResUtils.getString(R.string.slot)).append(item.msg.simInfo).append("\n\n")
}
}
@SuppressLint("SimpleDateFormat") val utcFormatter = SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.getDefault())
detailStr.append(ResUtils.getString(R.string.time)).append(DateUtils.date2String(item.msg.time, utcFormatter))

@ -90,6 +90,12 @@ class NotifyService : NotificationListenerService() {
if (text.isEmpty() && sbn.notification.tickerText != null) {
text = sbn.notification.tickerText.toString()
}
//通知Schema
val schema = sbn.notification.extras["android.template"].toString()//.substringBefore('/')
Log.d(TAG, "schema=$schema")
if (!TextUtils.isEmpty(schema)) {
title += "#####$schema"
}
//不处理空消息(标题跟内容都为空)
if (TextUtils.isEmpty(title) && TextUtils.isEmpty(text)) return

@ -571,6 +571,8 @@
<string name="resend">Resend</string>
<string name="rematch">Rematch</string>
<string name="from">From: </string>
<string name="title">Title: </string>
<string name="schema">Schema: </string>
<string name="msg">Msg: </string>
<string name="slot">Slot: </string>
<string name="rule">Rule: </string>
@ -590,6 +592,7 @@
<string name="tag_device_name">{{DEVICE_NAME}}</string>
<string name="tag_app_version">{{APP_VERSION}}</string>
<string name="tag_title">{{TITLE}}</string>
<string name="tag_schema">{{SCHEMA}}</string>
<string name="rule_sms">SMS</string>
<string name="rule_call">CALL</string>
<string name="rule_app">APP</string>
@ -724,6 +727,12 @@
<string name="bark_level_passive">Only added to the notification list, no screen reminder</string>
<string name="bark_url_regex" formatted="false" tools:ignore="TypographyDashes"><![CDATA[^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]]]></string>
<string name="bark_url_error">Url format error</string>
<string name="bark_key">AES Key</string>
<string name="bark_key_tips">Fill in 16 chars to enable push encryption</string>
<string name="bark_iv">AES iv</string>
<string name="bark_iv_tips">Fill in 16 chars to enable push encryption</string>
<string name="bark_key_regex" formatted="false" tools:ignore="TypographyDashes"><![CDATA[^[a-zA-Z0-9]{16}]]></string>
<string name="bark_key_error">AES Key and iv must be 16 characters</string>
<string name="from_email_hint">Fill in the username before @</string>
<string name="from_email_full_hint">Fill in the format: AAA@BBB.CCC</string>

@ -572,6 +572,8 @@
<string name="resend">重发消息</string>
<string name="rematch">重新匹配规则</string>
<string name="from">来源:</string>
<string name="title">标题:</string>
<string name="schema">Schema</string>
<string name="msg">消息:</string>
<string name="slot">卡槽:</string>
<string name="rule">规则:</string>
@ -591,6 +593,7 @@
<string name="tag_device_name">{{设备名称}}</string>
<string name="tag_app_version">{{当前应用版本号}}</string>
<string name="tag_title">{{通知标题}}</string>
<string name="tag_schema">{{通知Schema}}</string>
<string name="rule_sms">短信</string>
<string name="rule_call">来电</string>
<string name="rule_app">应用</string>
@ -725,6 +728,12 @@
<string name="bark_level_passive">仅添加到通知列表,不会亮屏提醒</string>
<string name="bark_url_regex" formatted="false" tools:ignore="TypographyDashes"><![CDATA[^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]]]></string>
<string name="bark_url_error">Url格式错误</string>
<string name="bark_key">加密密钥</string>
<string name="bark_key_tips">填写16个字符以启用推送加密</string>
<string name="bark_iv">偏移向量</string>
<string name="bark_iv_tips">填写16个字符以启用推送加密</string>
<string name="bark_key_regex" formatted="false" tools:ignore="TypographyDashes"><![CDATA[^([a-zA-Z0-9]{16})? $]]></string>
<string name="bark_key_error">加密密钥和偏移向量必须同时是16个字符</string>
<string name="from_email_hint">填写 @ 前面的用户名</string>
<string name="from_email_full_hint">填写格式: AAA@BBB.CCC</string>

Loading…
Cancel
Save