From e7c36afeb0558ddd0999985777a05e102a531f9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=97=E5=AE=AB=E9=9B=AA=E7=8F=8A?= Date: Wed, 8 Feb 2023 06:42:13 +0800 Subject: [PATCH] Fix duplicate broadcasts (#2373) --- .../java/org/lsposed/lspd/service/LSPosedService.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/daemon/src/main/java/org/lsposed/lspd/service/LSPosedService.java b/daemon/src/main/java/org/lsposed/lspd/service/LSPosedService.java index 5f6f6d75..55750498 100644 --- a/daemon/src/main/java/org/lsposed/lspd/service/LSPosedService.java +++ b/daemon/src/main/java/org/lsposed/lspd/service/LSPosedService.java @@ -31,9 +31,12 @@ import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; import android.net.Uri; import android.os.Binder; +import android.os.Build; import android.os.Bundle; import android.os.IBinder; import android.os.RemoteException; +import android.provider.Telephony; +import android.telephony.TelephonyManager; import android.util.Log; import org.lsposed.daemon.BuildConfig; @@ -277,8 +280,12 @@ public class LSPosedService extends ILSPosedService.Stub { private void registerSecretCodeReceiver() { IntentFilter intentFilter = new IntentFilter(); - intentFilter.addAction("android.provider.Telephony.SECRET_CODE"); - intentFilter.addAction("android.telephony.action.SECRET_CODE"); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + intentFilter.addAction(TelephonyManager.ACTION_SECRET_CODE); + } else { + // noinspection InlinedApi + intentFilter.addAction(Telephony.Sms.Intents.SECRET_CODE_ACTION); + } intentFilter.addDataAuthority("5776733", null); intentFilter.addDataScheme("android_secret_code");