diff --git a/src/com/android/settings/bluetooth/BluetoothPairingService.java b/src/com/android/settings/bluetooth/BluetoothPairingService.java index 10d5ca808d5..c411b0cd0b4 100644 --- a/src/com/android/settings/bluetooth/BluetoothPairingService.java +++ b/src/com/android/settings/bluetooth/BluetoothPairingService.java @@ -127,10 +127,12 @@ public final class BluetoothPairingService extends Service { PendingIntent pairIntent = PendingIntent.getActivity(this, 0, getPairingDialogIntent(this, intent, BluetoothDevice.EXTRA_PAIRING_INITIATOR_BACKGROUND), - PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT); + PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT + | PendingIntent.FLAG_IMMUTABLE); PendingIntent dismissIntent = PendingIntent.getBroadcast(this, 0, - new Intent(ACTION_DISMISS_PAIRING), PendingIntent.FLAG_ONE_SHOT); + new Intent(ACTION_DISMISS_PAIRING), PendingIntent.FLAG_ONE_SHOT + | PendingIntent.FLAG_IMMUTABLE); mDevice = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); diff --git a/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java b/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java index c5f62b8b4d6..ae3b08a510a 100644 --- a/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java +++ b/src/com/android/settings/bluetooth/BluetoothPermissionRequest.java @@ -177,8 +177,9 @@ public final class BluetoothPermissionRequest extends BroadcastReceiver { .setOnlyAlertOnce(false) .setDefaults(Notification.DEFAULT_ALL) .setContentIntent(PendingIntent.getActivity(context, 0, - connectionAccessIntent, 0)) - .setDeleteIntent(PendingIntent.getBroadcast(context, 0, deleteIntent, 0)) + connectionAccessIntent, PendingIntent.FLAG_IMMUTABLE)) + .setDeleteIntent(PendingIntent.getBroadcast(context, 0, deleteIntent, + PendingIntent.FLAG_IMMUTABLE)) .setColor(context.getColor( com.android.internal.R.color.system_notification_accent_color)) .setLocalOnly(true) diff --git a/src/com/android/settings/media/MediaOutputGroupSlice.java b/src/com/android/settings/media/MediaOutputGroupSlice.java index d33ca45a812..0359ca9b71b 100644 --- a/src/com/android/settings/media/MediaOutputGroupSlice.java +++ b/src/com/android/settings/media/MediaOutputGroupSlice.java @@ -194,7 +194,7 @@ public class MediaOutputGroupSlice implements CustomSliceable { intent.putExtra(CUSTOMIZED_ACTION, action); intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND); return PendingIntent.getBroadcast(mContext, requestCode, intent, - PendingIntent.FLAG_UPDATE_CURRENT); + PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); } private MediaDeviceUpdateWorker getWorker() { diff --git a/src/com/android/settings/media/MediaOutputSlice.java b/src/com/android/settings/media/MediaOutputSlice.java index 6611e8d1cc8..8b3c1ec7eda 100644 --- a/src/com/android/settings/media/MediaOutputSlice.java +++ b/src/com/android/settings/media/MediaOutputSlice.java @@ -147,7 +147,8 @@ public class MediaOutputSlice implements CustomSliceable { .setSourceMetricsCategory(SettingsEnums.PANEL_MEDIA_OUTPUT) .toIntent(); final SliceAction primarySliceAction = SliceAction.createDeeplink( - PendingIntent.getActivity(mContext, 0 /* requestCode */, intent, 0 /* flags */), + PendingIntent.getActivity(mContext, 0 /* requestCode */, intent, + PendingIntent.FLAG_IMMUTABLE), IconCompat.createWithResource(mContext, R.drawable.ic_add_24dp/*ic_add_blue_24dp*/), ListBuilder.ICON_IMAGE, mContext.getText(R.string.bluetooth_pairing_pref_title)); @@ -248,7 +249,8 @@ public class MediaOutputSlice implements CustomSliceable { .putExtra(MEDIA_DEVICE_ID, id) .setClass(mContext, SliceBroadcastReceiver.class); - return PendingIntent.getBroadcast(mContext, requestCode, intent, 0); + return PendingIntent.getBroadcast(mContext, requestCode, intent, + PendingIntent.FLAG_IMMUTABLE); } private SliceAction getEndItemSliceAction() { @@ -261,7 +263,8 @@ public class MediaOutputSlice implements CustomSliceable { ? 0 : getWorker().getPackageName().hashCode(); return SliceAction.createDeeplink( - PendingIntent.getActivity(mContext, requestCode, intent, 0 /* flags */), + PendingIntent.getActivity(mContext, requestCode, intent, + PendingIntent.FLAG_IMMUTABLE), IconCompat.createWithResource(mContext, R.drawable.ic_add_blue_24dp), ListBuilder.ICON_IMAGE, mContext.getText(R.string.add)); @@ -350,7 +353,7 @@ public class MediaOutputSlice implements CustomSliceable { intent.putExtra(MEDIA_DEVICE_ID, id); intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND); return PendingIntent.getBroadcast(context, requestCode, intent, - PendingIntent.FLAG_UPDATE_CURRENT); + PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); } @Override diff --git a/src/com/android/settings/media/RemoteMediaSlice.java b/src/com/android/settings/media/RemoteMediaSlice.java index debc0ecc164..839dc4f1bfd 100644 --- a/src/com/android/settings/media/RemoteMediaSlice.java +++ b/src/com/android/settings/media/RemoteMediaSlice.java @@ -165,7 +165,8 @@ public class RemoteMediaSlice implements CustomSliceable { .setData(getUri()) .putExtra(MEDIA_ID, id) .setClass(mContext, SliceBroadcastReceiver.class); - return PendingIntent.getBroadcast(mContext, requestCode, intent, 0); + return PendingIntent.getBroadcast(mContext, requestCode, intent, + PendingIntent.FLAG_MUTABLE); } private SliceAction getSoundSettingAction(CharSequence actionTitle, IconCompat icon, @@ -177,7 +178,8 @@ public class RemoteMediaSlice implements CustomSliceable { mContext.getText(R.string.sound_settings).toString(), 0); intent.setClassName(mContext.getPackageName(), SubSettings.class.getName()); intent.setData(contentUri); - final PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, 0); + final PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, + PendingIntent.FLAG_IMMUTABLE); final SliceAction primarySliceAction = SliceAction.createDeeplink(pendingIntent, icon, ListBuilder.ICON_IMAGE, actionTitle); return primarySliceAction; @@ -192,7 +194,8 @@ public class RemoteMediaSlice implements CustomSliceable { .putExtra(SESSION_INFO, info) .addFlags(Intent.FLAG_RECEIVER_FOREGROUND); final PendingIntent primaryBroadcastIntent = PendingIntent.getBroadcast(mContext, - info.hashCode(), intent, PendingIntent.FLAG_UPDATE_CURRENT); + info.hashCode(), intent, + PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); final SliceAction primarySliceAction = SliceAction.createDeeplink( primaryBroadcastIntent, IconCompat.createWithResource(mContext, R.drawable.ic_volume_remote),