PendingIntent-Fehler: FLAG_IMMUTABLE oder FLAG_MUTABLE für Android 12+ erforderlich
Hallo zusammen! Ich bin neu in der Android-Entwicklung mit Kotlin und bin auf ein Problem gestoßen, als ich auf targetSdk 31 (Android 12) umgestiegen bin. Ich verwende MediaSessionCompat zur Steuerung des Mediaplayers. Beim Erstellen eines PendingIntent für die "Play/Pause"-Taste in der Notification tritt folgender Fehler auf:
Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
Mein Code sieht so aus:
```kotlin
val intent = Intent(this, MainActivity::class.java)
val pendingIntent = PendingIntent.getActivity(this, 0, intent, 0)
val playAction = NotificationCompat.Action(
R.drawable.ic_play,
"Play",
pendingIntent
)
```
Ich verstehe, dass ich ein Flag hinzufügen muss, bin mir aber nicht sicher, welches ich wählen soll und wie sich dies auf die Funktionsweise der Benachrichtigungen auswirkt. Außerdem habe ich gehört, dass es noch ein Problem mit dem BroadcastReceiver für MediaButtonReceiver gibt. Könnt ihr mir bitte sagen, wie ich diesen Fehler für alle PendingIntents im Zusammenhang mit MediaSession richtig behebe? Vielen Dank im Voraus.