From 89cd86326ae45c5a5335d4f6f162911e199a49df Mon Sep 17 00:00:00 2001 From: pppscn <35696959@qq.com> Date: Mon, 14 Feb 2022 10:19:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E8=BD=AC=E5=8F=91?= =?UTF-8?q?=E7=9F=AD=E4=BF=A1=E5=87=BA=E9=94=99=EF=BC=88Targeting=20S+(ver?= =?UTF-8?q?sion=2031=20and=20above)=20requires=20that=20one=20of=20FLAG=5F?= =?UTF-8?q?IMMUATABLE=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/idormy/sms/forwarder/utils/SmsUtil.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/idormy/sms/forwarder/utils/SmsUtil.java b/app/src/main/java/com/idormy/sms/forwarder/utils/SmsUtil.java index 8c085386..e33ac123 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/utils/SmsUtil.java +++ b/app/src/main/java/com/idormy/sms/forwarder/utils/SmsUtil.java @@ -37,8 +37,12 @@ public class SmsUtil { for (String mobile : mobileArray) { try { SmsManager smsManager = SmsManager.getSmsManagerForSubscriptionId(subId); - @SuppressLint("UnspecifiedImmutableFlag") PendingIntent sendPI = PendingIntent.getBroadcast(context, 0, new Intent(Context.TELEPHONY_SUBSCRIPTION_SERVICE), PendingIntent.FLAG_ONE_SHOT); - @SuppressLint("UnspecifiedImmutableFlag") PendingIntent deliverPI = PendingIntent.getBroadcast(context, 0, new Intent("DELIVERED_SMS_ACTION"), 0); + + int sendFlags = Build.VERSION.SDK_INT >= 30 ? PendingIntent.FLAG_IMMUTABLE : PendingIntent.FLAG_ONE_SHOT; + PendingIntent sendPI = PendingIntent.getBroadcast(context, 0, new Intent(Context.TELEPHONY_SUBSCRIPTION_SERVICE), sendFlags); + + int deliverFlags = Build.VERSION.SDK_INT >= 30 ? PendingIntent.FLAG_IMMUTABLE : 0; + PendingIntent deliverPI = PendingIntent.getBroadcast(context, 0, new Intent("DELIVERED_SMS_ACTION"), deliverFlags); ArrayList sentPendingIntents = new ArrayList<>(); ArrayList deliveredPendingIntents = new ArrayList<>();