PendingIntent त्रुटि: Android 12+ के लिए FLAG_IMMUTABLE या FLAG_MUTABLE अनिवार्य है
सभी को नमस्ते! मैं Kotlin में Android-डेवलपमेंट में नौसिखिया हूँ, और targetSdk 31 (Android 12) पर स्विच करते समय एक समस्या का सामना करना पड़ा। मैं मीडिया प्लेयर को नियंत्रित करने के लिए MediaSessionCompat का उपयोग कर रहा हूँ। नोटिफिकेशन में "Play/Pause" बटन के लिए 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 के लिए इस त्रुटि को सही तरीके से कैसे ठीक करें? पहले से धन्यवाद!
P.S. मैंने कोड को अपडेट किया है।