this post was submitted on 03 Jul 2025
850 points (98.0% liked)
Technology
72362 readers
2812 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related news or articles.
- Be excellent to each other!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
- Check for duplicates before posting, duplicates may be removed
- Accounts 7 days and younger will have their posts automatically removed.
Approved Bots
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Maybe they want that, but the statement on their website is not wrong on a technicality because it's oversimplified; it's wrong because it asserts a privacy difference between the two operating systems that does not exist.
It's actually not possible to build a push service like FCM or APNS on Android and have it function at the same level as FCM. FCM has special permissions to bypass certain device states on the device to ensure message delivery that nothing else can match.
The best you can do is approximate it with an always active websocket and a foreground service always running with battery optimizations disabled, but good luck not having that foreground service shut down on occasion as well. Devices are hostile to them for battery saving purposes. You'd have the best luck with a Pixel device though for something like that. You could also do some sort of scheduled background polling, but the device can be hostile to that as well, and it would eat more battery.
It's true that FCM will result in more reliability and a better UX than other ways to implement notifications. Doing something else is still the right choice for certain use cases, such as those where privacy or keeping the entire codebase open source are top priorities.
Ya, for sure. My beef was just with people saying you can roll your own, but glossing over the reduced user experience and reliability if you do.
With those trade offs it's absolutely doable and makes sense for certain situations.
Yes, I used web sockets for Signal for a while. It drained 30% of my battery when the phone sat idle for a day. Absolutely bonkers. Made the phone almost unusable so had to revert to FCM or disable notifications.
Ya, it can be brutal on battery.
I worked on an app once where delivery was critical, so we gave them the option of the active service+websocket, but for them the trade off was acceptable.
Pushes can be pretty flakey given all the shenanigans OEMs do on the device, even when marked as high priority correctly.
And the even worse part is when OEMs reset battery saving flags the user had set to help pushes get through and they stop working one day because of it.