EddyVerbruggen / nativescript-plugin-firebase

:fire: NativeScript plugin for Firebase
https://firebase.google.com
MIT License
1.01k stars 448 forks source link

Firebase Messaging crash issue in Android 13 #1889

Open pauline-webpuppies opened 1 year ago

pauline-webpuppies commented 1 year ago

Hi,

We recently released a new version of our app with targetSdkVersion 31. Firebase Crashlytics reported the following crash (triggered by an Android 13 device): Fatal Exception: java.lang.IllegalArgumentException: com.MaxiCash.ipayment: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent. Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles. at android.app.PendingIntent.checkFlags(PendingIntent.java:401) at android.app.PendingIntent.getActivityAsUser(PendingIntent.java:484) at android.app.PendingIntent.getActivity(PendingIntent.java:470) at android.app.PendingIntent.getActivity(PendingIntent.java:434) at com.google.firebase.messaging.CommonNotificationBuilder.createContentIntent(com.google.firebase:firebase-messaging@@20.3.0:125) at com.google.firebase.messaging.CommonNotificationBuilder.createNotificationInfo(com.google.firebase:firebase-messaging@@20.3.0:27) at com.google.firebase.messaging.CommonNotificationBuilder.createNotificationInfo(com.google.firebase:firebase-messaging@@20.3.0:9) at com.google.firebase.messaging.DisplayNotification.handleNotification(com.google.firebase:firebase-messaging@@20.3.0:27) at com.google.firebase.messaging.FirebaseMessagingService.dispatchMessage(com.google.firebase:firebase-messaging@@20.3.0:65) at com.google.firebase.messaging.FirebaseMessagingService.passMessageIntentToSdk(com.google.firebase:firebase-messaging@@20.3.0:44) at com.google.firebase.messaging.FirebaseMessagingService.handleMessageIntent(com.google.firebase:firebase-messaging@@20.3.0:27) at com.google.firebase.messaging.FirebaseMessagingService.handleIntent(com.google.firebase:firebase-messaging@@20.3.0:17) at com.google.firebase.messaging.EnhancedIntentService.lambda$processIntent$0$EnhancedIntentService(com.google.firebase:firebase-messaging@@20.3.0:43) at com.google.firebase.messaging.EnhancedIntentService$$Lambda$0.run(:6) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637) at com.google.android.gms.common.util.concurrent.zza.run(com.google.android.gms:play-services-basement@@18.1.0:2) at java.lang.Thread.run(Thread.java:1012)

image

We found a similar issue here but it was triggered by Android 12 device and they fixed it by releasing a new version: https://github.com/firebase/firebase-android-sdk/issues/3115

Nativescript CLI: 8.4.0 @nativescript/android version: 8.3.1 @nativescript/firebase version: 11.1.3

What should we do to resolve this? Appreciate any help, thank you.

pichurichko commented 1 year ago

+1 Experiencing the same issue as described above

pichurichko commented 1 year ago

@pauline-webpuppies try to use this plugin, it works with Android 13 and has better support:

https://github.com/NativeScript/firebase

joeytitans commented 1 year ago

@pauline-webpuppies Did you find a resolution? We are experiencing the same crashes - luckily the crashes seem to be occurring in the background after a notification is received, but still an annoyance nevertheless.

pauline-webpuppies commented 1 year ago

@pichurichko thanks, we will try it out. Did you use any custom configurations to make it work?

@joeytitans unfortunately no, we'll try @pichurichko's suggestion and see if that works

pichurichko commented 1 year ago

@pauline-webpuppies just change targetSdkVersion to 33 for android build. Everything else works as expected and described in readme. See demos for details (if you use angular pay attention to the place of firebase initialisation).