the-blue-alliance / the-blue-alliance-android

An Android app for accessing information about the FIRST Robotics Competition.
MIT License
76 stars 34 forks source link

Notifications Have Empty Icons on Some Devices #965

Closed phil-lopreiato closed 1 year ago

phil-lopreiato commented 2 years ago

image

Maybe need to do this? https://github.com/firebase/quickstart-android/tree/master/messaging#custom-default-icon

bherbst commented 2 years ago

Do you have more device details? The icon is showing up fine for me for upcoming matches on 12L

EDIT: just received one with a circle instead of the icon. 🤔

bherbst commented 2 years ago

AH! I think I've got it.

You can't tell from this screenshot, but the first one had the correct icon, the next three did not.

Screenshot_20220401_163107

If you look verrrry closely you'll see the message format is different too. The three with the bad icon have a message that's pre-formatted coming from the backend, the one with the good icon is being generated locally.

I suspect we are crashing while trying to show the notification locally, specifically because we aren't using PendingIntent.FLAG_IMMUTABLE here (it crashes on my dev build): https://github.com/the-blue-alliance/the-blue-alliance-android/blob/master/android/src/main/java/com/thebluealliance/androidclient/gcm/notifications/UpcomingMatchNotification.java#L198-L201

Good news is the pre-formatted version works well! If we want to run with that we could remove the local parsing and set the default notification icon with the option you linked too. Or if we want some control over the notifications locally (like setting the summary notification) we probably want to fix that intent.