Note that since a while there is also the possibility of using web sockets. But they are an extreme battery drain, and thus google services are quasi-mandatory. Telegram solves this without being a battery drain, possibly at the cost of delivering messages with a delay, but why isn't that my choice.
I can't tell you how they do it, but Telegram is lightning fast with push notifications across all kinds of devices, including Android. Been rocking it as my primary messenger for years.
Whenever a few of us are sitting around in real life, and someone sends something to a group chat, all the phones on the table will buzz instantly together (iOS and Android).
And on top of that, battery usage is really low on Android. I use it a TON, and it's never in the top n apps of battery usage. Meanwhile, I can just open Snapchat once, and I lose a few percent.
Yes but the implementation of the notification handling is impressive on the client side. The server side software as far as this is concerned should be easily deducible and isn't the interesting part.
I use Signal without gapps and do not have extreme battery drain. I always get real-time notifications too - no late or missing deliveries. This is both on a galaxy s9 which went from stock ROM to deleted Gapps with no battery impact, and s 1+ 7 Pro with no Gapps from the very beginning (I get the expected excellent battery life).
I suspected that Signal basically took Over Gapps's role since it's the only app I use with notifications. Google keeps open a single optimized connection and apps go through it instead of having 10 open connections. After deleting Gapps, Signal is the only app keeping open a connection so it basically has the same impact.
But then I installed WhatsApp and Signal+WA both work perfectly without Gapps and with no gigantic battery drain. So I have no idea what black magic is making this work.
I just looked up my battery stats; since the last full charge 32 hours ago Signal has used 1% of the power. I got a few notifications and used the app for a few minutes in this time. WhatsApp's power usage is too low to show up in the stats.
Telegram without GCM is incredibly fast. Compared to my computer with the app/website open, it's at most one second slower, and often times faster at delivering messages, even on battery saver. It also uses less than a percent of my battery per day if I don't open the app, and was 2% of my battery usage in the last two days despite being on the app for close to an hour.
Of course not, but what's the point? Who complains that Signal doesn't run without Google Play Services are the kind of users that wants to run a mostly free distribution of Android (like LineageOS) without any Google software on it. Saying well you should buy a more closed and proprietary system that can run Signal without Google software is nonsense.
Luckily for those users, Signal does run on mostly free distributions of Android without Google software on it - specifically without Google Play Services. I do so.
Note that since a while there is also the possibility of using web sockets. But they are an extreme battery drain, and thus google services are quasi-mandatory. Telegram solves this without being a battery drain, possibly at the cost of delivering messages with a delay, but why isn't that my choice.