5 ms·
This is an interesting idea. Sadly, applications that use this are probably not eligible to be distributed through Google Play. One of the main reasons, as I un
by gdeglin 7y ago
This is an interesting idea. Sadly, applications that use this are probably not eligible to be distributed through Google Play. One of the main reasons, as I understand, is that Google wants to discourage lots of apps from each having their own network connections open in the background.
https://news.ycombinator.com/item?id=20145206 https://news.ycombinator.com/item?id=20145206
- JoshTriplett 7y agoThere's really no good reason that a network connection open in the background needs to use extra battery, if configured carefully. If configured incorrectly, it absolutely would, but a background connection doesn't need to regularly wake the phone up, just as Google's own push messaging service doesn't.
- _-___________-_ 7y agoMore connections probably does mean more wakeups, in general, though. FCM will coalesce notifications that happen close together in time, for example. Even if OpenPush does that (I haven't read all the details yet), it still means two coalesced batches of notifications rather than one if you have some apps using FCM and some using OpenPush. The situation obviously gets even worse if every app implements push itself. I still think it's worth it, to be clear, and for people who want a fully de-Googled device, hopefully eventually all their apps will use OpenPush and the battery life situation is the same as a device where all the apps use FCM. (Assuming OpenPush implements similar coalescing.)
- izacus 7y agoYou're right, there isn't. But what years of unrestricted background execution have shown us is that developers these days will choose the lazy solution over the right solution about 9 times out of 10. I'd be the richest guy if I'd get a penny every time I've seen an Android app do background polling every 5 minutes (!) instead of using push notifications or even long polling. The usual response to recommendation to improve the design was "Why? It works and it's a lot of work to run a push server!". So as much as I dislike restrictions on my operating systems, Google forcing developers to push notifications has massively improved battery life across the ecosystem.
- boudin 7y agoI think the target will mainly be developers who already provide a version of their app on f-droid. I don't know of it's an obligation to use google's firebase pish notifications though. I might be mistaken, but I think that Conversations use its own push notifications already: https://play.google.com/store/apps/details?id=eu.siacs.conversations&hl=en_US https://play.google.com/store/apps/details?id=eu.siacs.conve...
- _-___________-_ 7y agoThis will probably be used for apps that distribute through, e.g., F-Droid. Apps that also distribute on Google Play could use FCM for the version distributed through Google Play, and OpenPush for the version distributed elsewhere.
- rohan1024 7y agoThen give the user choice between the service he wants to use. How we can't see through this monopoly is beyond me.
- tuukkah 7y agoCounter-example: Telegram is available in Google Play and implements its own push service (kept alive by a permanent background notification).
- izacus 7y agoThe Play Store version users FCM and there's no notification.
- est31 7y agoThere is still a centralized push notification app on the phone. So it's not every app having its own network connection to the push service. The decentralization refers to the fact that the notification app likely will get the ability to configure different push services. That configuration is then sent to the apps that use it to upload it to their upstream backends. Those upstream backends now have to send push notifications according to that configuration (token + hostname).