Avatar ·

PendingIntent错误:Android 12+必须指定FLAG_IMMUTABLE或FLAG_MUTABLE

大家好!我是Kotlin Android开发的新手,在切换到targetSdk 31(Android 12)时遇到了问题。我使用MediaSessionCompat来管理媒体播放器。在创建通知(Notification)中“播放/暂停”按钮的PendingIntent时,出现以下错误: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent. 我的代码如下: ```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 ) ``` 我知道需要添加一个标志,但不确定该选择哪一个,以及这会对通知的工作产生什么影响。另外,我听说MediaButtonReceiver的BroadcastReceiver也有问题。请告诉我如何正确修复所有与MediaSession相关的PendingIntent?提前感谢!