

Local, on-device apps don’t need to go through FCM or any other servers to show notifications, apps generate notifications offline.
Same goes for Signal, it doesn’t ask FCM to deliver a notification, it asks to deliver a wakeup ping, and then the Signal app gets the message and generates a notification locally.







You seem to be under an impression that the actual notification that you see in the notification shade of your phone must go through FCM. That is not true. There are no external services involved in generating notifications on Android, apps can just show notifications by themselves.
What FCM is used for is sending a wakeup call to an app. The naming is confusing, but the “notification service” is not sending a notification in the sense of what you see in the notification shade. It is notifying an app of an event. The app can then react in any way it wants, possibly by creating a notification for the notification shade. But the notification you see in the UI of your phone didn’t go through FCM.
And this is a completely separate thing. Yes, you can configure apps to not show details in notifications, but that has nothing to do with FCM. It only controls what the app does locally, when generating the local notification, after FCM is no longer involved (if it was involved in the first place - many notifications don’t need it, for example a notification from a timer app).
This statement is easy to disprove in another way too. FCM only supports sending up to 4KB of data, and yet you can get a notification with high resolution images. Which also shows that no, things you see in the notification didn’t have to pass through the push notification service - the local app got the data and prepared the notification by itself, possibly after being woken up to do so by FCM.