From 2c91d32e41888e0218c7ffec24a1e86ba16cd0ce Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Mon, 14 Apr 2025 16:36:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=A8=E5=8F=B7=E7=A0=81=E8=AF=86=E5=88=AB?= =?UTF-8?q?=E5=AF=B9=E6=AF=94=E4=B8=AD=EF=BC=8C=E5=85=BC=E5=AE=B9=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E5=8C=BA=E5=9F=9F=E5=8F=B7=E7=A0=81=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mymessagemanager/build.properties | 4 +- .../receivers/SMSRecevier.java | 2 +- .../mymessagemanager/utils/PhoneUtil.java | 28 ++++++++++- .../mymessagemanager/utils/UnitAreaUtils.java | 47 +++++++++++++++++++ 4 files changed, 77 insertions(+), 4 deletions(-) create mode 100644 mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/UnitAreaUtils.java diff --git a/mymessagemanager/build.properties b/mymessagemanager/build.properties index 4f8687e..d21409c 100644 --- a/mymessagemanager/build.properties +++ b/mymessagemanager/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Tue Apr 01 19:55:49 HKT 2025 +#Mon Apr 14 08:23:49 GMT 2025 stageCount=5 libraryProject= baseVersion=15.2 publishVersion=15.2.4 -buildCount=0 +buildCount=12 baseBetaVersion=15.2.5 diff --git a/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/receivers/SMSRecevier.java b/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/receivers/SMSRecevier.java index de664d0..fed3ba1 100644 --- a/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/receivers/SMSRecevier.java +++ b/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/receivers/SMSRecevier.java @@ -36,7 +36,7 @@ public class SMSRecevier extends BroadcastReceiver { String szAction = intent.getAction(); if (szAction.equals(ACTION_SMS_RECEIVED)) { - //LogUtils.d(TAG, "ACTION_SMS_RECEIVED"); + LogUtils.d(TAG, "ACTION_SMS_RECEIVED"); String szSmsBody = SMSUtil.getSmsBody(intent); String szSmsAddress = SMSUtil.getSmsAddress(intent); AppConfigUtil configUtil = AppConfigUtil.getInstance(context); diff --git a/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/PhoneUtil.java b/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/PhoneUtil.java index 05e9220..f1df279 100644 --- a/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/PhoneUtil.java +++ b/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/PhoneUtil.java @@ -62,13 +62,39 @@ public class PhoneUtil { public boolean isPhoneInContacts(String szPhone) { List listPhoneDto = getPhoneList(); + LogUtils.d(TAG, String.format("isPhoneInContacts(...) listPhoneDto.size() %d", listPhoneDto.size())); for (int i = 0; i < listPhoneDto.size(); i++) { - if (listPhoneDto.get(i).getTelPhone().equals(szPhone)) { + if (isTheSamePhoneNumber(listPhoneDto.get(i).getTelPhone(), szPhone)) { return true; } } return false; } + + boolean isTheSamePhoneNumber(String szNum1, String szNum2) { + //LogUtils.d(TAG, String.format("szNum1 %s\nszNum2 %s", szNum1, szNum2)); + if(szNum1.equals(szNum2)) { + LogUtils.d(TAG, "szNum1.equals(szNum2)"); + return true; + } + + if(UnitAreaUtils.getInstance(mContext).isCurrentUnitAreaNumber(szNum1)) { + if(szNum1.equals(UnitAreaUtils.getInstance(mContext).genCurrentUnitAreaNumber(szNum2))) { + LogUtils.d(TAG, "szNum1.equals(UnitAreaUtils.genCurrentUnitAreaNumber(szNum2))"); + return true; + } + } + + if(UnitAreaUtils.getInstance(mContext).isCurrentUnitAreaNumber(szNum2)) { + if(szNum2.equals(UnitAreaUtils.getInstance(mContext).genCurrentUnitAreaNumber(szNum1))) { + LogUtils.d(TAG, "szNum2.equals(UnitAreaUtils.genCurrentUnitAreaNumber(szNum1))"); + return true; + } + } + + LogUtils.d(TAG, "isTheSamePhoneNumber(...) return false;"); + return false; + } // // 检验电话号码是否是数字 diff --git a/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/UnitAreaUtils.java b/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/UnitAreaUtils.java new file mode 100644 index 0000000..4d106e6 --- /dev/null +++ b/mymessagemanager/src/main/java/cc/winboll/studio/mymessagemanager/utils/UnitAreaUtils.java @@ -0,0 +1,47 @@ +package cc.winboll.studio.mymessagemanager.utils; + +/** + * @Author ZhanGSKen@AliYun.Com + * @Date 2025/04/14 15:55:36 + * @Describe 电话号码区域管理辅助类 + */ +import cc.winboll.studio.libappbase.LogUtils; +import cc.winboll.studio.mymessagemanager.beans.AppConfigBean; +import android.content.Context; + +public class UnitAreaUtils { + + public static final String TAG = "UnitAreaUtils"; + + static UnitAreaUtils _UnitAreaUtils; + Context mContext; + + UnitAreaUtils(Context context) { + mContext = context; + } + + public static UnitAreaUtils getInstance(Context context) { + if (_UnitAreaUtils == null) { + _UnitAreaUtils = new UnitAreaUtils(context); + } + return _UnitAreaUtils; + } + + public boolean isCurrentUnitAreaNumber(String szPhoneNumer) { + String szUnitArea = getUnitArea(); + LogUtils.d(TAG, String.format("szPhoneNumer.substring(1,3) %s", szPhoneNumer.substring(1,3))); + return szPhoneNumer.substring(1,3).equals(szUnitArea); + } + + public String genCurrentUnitAreaNumber(String szPhoneNumer) { + String szUnitArea = getUnitArea(); + LogUtils.d(TAG, String.format("szUnitArea %s", szUnitArea)); + return "+" + szUnitArea + szPhoneNumer; + } + + String getUnitArea() { + String szUnitArea = AppConfigUtil.getInstance(mContext).mAppConfigBean.getCountryCode(); + LogUtils.d(TAG, String.format("szUnitArea %s", szUnitArea)); + return szUnitArea; + } +}