diff --git a/app/src/main/java/com/idormy/sms/forwarder/model/CallInfo.java b/app/src/main/java/com/idormy/sms/forwarder/model/CallInfo.java index e0904971..5f9ecc0a 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/model/CallInfo.java +++ b/app/src/main/java/com/idormy/sms/forwarder/model/CallInfo.java @@ -10,7 +10,7 @@ public class CallInfo { public String number; //号码 public Long dateLong; //获取通话日期 public int duration;//获取通话时长,值为多少秒 - public int type; //获取通话类型:1.呼入2.呼出3.未接 + public int type; //获取通话类型:1.呼入 2.呼出 3.未接 public int subscriptionId; public CallInfo() { diff --git a/app/src/main/java/com/idormy/sms/forwarder/receiver/PhoneStateReceiver.java b/app/src/main/java/com/idormy/sms/forwarder/receiver/PhoneStateReceiver.java index 570815fd..94120a79 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/receiver/PhoneStateReceiver.java +++ b/app/src/main/java/com/idormy/sms/forwarder/receiver/PhoneStateReceiver.java @@ -81,6 +81,7 @@ public class PhoneStateReceiver extends BroadcastReceiver { } String name = callInfo.getName(); + Log.d(TAG, "getSubscriptionId = " + callInfo.getSubscriptionId()); int simId = SimUtil.getSimIdBySubscriptionId(callInfo.getSubscriptionId()); String simInfo = simId == 2 ? SettingUtil.getAddExtraSim2() : SettingUtil.getAddExtraSim1(); //自定义备注优先 if (!simInfo.isEmpty()) { @@ -98,7 +99,6 @@ public class PhoneStateReceiver extends BroadcastReceiver { if (TextUtils.isEmpty(name)) name = context.getString(R.string.unknown_number); } - //TODO:同一卡槽同一秒的重复未接来电广播不再重复处理(部分机型会收到两条广播?) String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINESE).format(new Date()); String prevHash = SettingUtil.getPrevNoticeHash(phoneNumber); diff --git a/app/src/main/java/com/idormy/sms/forwarder/utils/RuleLine.java b/app/src/main/java/com/idormy/sms/forwarder/utils/RuleLine.java index 598bbb3f..614f0572 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/utils/RuleLine.java +++ b/app/src/main/java/com/idormy/sms/forwarder/utils/RuleLine.java @@ -20,6 +20,8 @@ class RuleLine { public static final String FILED_PACKAGE_NAME = "APP包名"; public static final String FILED_MSG_CONTENT = "短信内容"; public static final String FILED_INFORM_CONTENT = "通知内容"; + public static final String FILED_INFORM_TITLE = "通知标题"; + public static final String FILED_SIM_SLOT_INFO = "卡槽信息"; public static final String SURE_YES = "是"; public static final String SURE_NOT = "不是"; public static final String CHECK_EQUALS = "相等"; @@ -47,6 +49,8 @@ class RuleLine { FILED_LIST.add(FILED_PACKAGE_NAME); FILED_LIST.add(FILED_MSG_CONTENT); FILED_LIST.add(FILED_INFORM_CONTENT); + FILED_LIST.add(FILED_INFORM_TITLE); + FILED_LIST.add(FILED_SIM_SLOT_INFO); } static { @@ -278,6 +282,10 @@ class RuleLine { case FILED_INFORM_CONTENT: mixChecked = checkValue(msg.getContent()); break; + case FILED_INFORM_TITLE: + case FILED_SIM_SLOT_INFO: + mixChecked = checkValue(msg.getSimInfo()); + break; default: break; } diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index 660119e8..edcd2b67 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -233,7 +233,7 @@ User App System App Please deactivate power optimization for SmsForwarder, in order to keep the App alive! - Please grant Notification reading permission to SmsForwarder, before other Apps\' notification could be forwarded. Forwarding automatically canceled! + Please grant Notification reading permission to SmsForwarder, before other Apps\'s notification could be forwarded. Forwarding automatically canceled! The notification service is enabled The notification service is disabled Token