7 ms·
There's a good reason to not allow 3rd party background networking though. It would work in theory, but in practice every company with more than a few devs woul
by Zanfa 5y ago
There's a good reason to not allow 3rd party background networking though. It would work in theory, but in practice every company with more than a few devs would eventually implement their own crappy version of a notification system with terrible power management. Given that even well-funded companies like Uber/Facebook have constant engineering quality issues, I definitely wouldn't want to have 20+ separate active notification connections.
This is not even hypothetical, this was literally happening before background services were heavily limited in earlier Android versions.
- Aissen 5y agoCorollary: notifications should be a public service whose only purpose would be to maintain that TCP connection and have a server as a broker, with clear control given to the user over which app can use said service and be allowed to wakeup their device.
- Spivak 5y agoSo almost literally how iOS and Android notifications work except I guess jointly owned and operated by by Google and Apple? Because public services like this are necessarily funded and operated by the companies that have a financial interest in them existing.
- Aissen 5y agoNot really: you can't use the service alone, without any other software. The software is not open source. And finally, the user has no control over which apps/services can send them a notification (or really, a device wakeup) at a given moment.
- judge2020 5y agoThose are downsides in many situations but the existing systems match your original description perfectly, unless "public" has a special description you didn't communicate.
- jsiepkes 5y agoThe current situation means I can't even use my own push notifications for company owned devices running company written software. That's just ridiculous.
- Zanfa 5y agoYou could always run a custom Android build on company devices.
- tut-urut-utut 5y agoSure, and by installing that custom build, you lose support and void warranty from your device provider.
- jsiepkes 5y agoThat, and even worse maintaining a custom build with changes and the infrastructure such as maintaining a OTA update server, etc. is a lot of work.
- Andrew_nenakhov 5y agoThe only thing you really need is an easily accessible tool to explicitly view which apps are allowed to run in the background. This doesn't have to occupy valuable notification area space. With current notched phones which are limited to 4 notifications (you get four and a dot if there are more), you can have VPN app, XMPP client, Syncthing, and a generous space for one more incoming notification.
- izacus 5y ago> The only thing you really need is an easily accessible tool to explicitly view which apps are allowed to run in the background. This doesn't have to occupy valuable notification area space. Those tools existed and they didn't help because users had no recurse against poorly behaving apps. Meanwhile Android kept being reamed by reviewers and media for poor battery life and people kept buying locked-down iPhones instead because they lasted longer. I spent countless of hours trying to get Android devs to not do dumbass things with battery ("oh, I need updates? I''ll just poll the server every 20 minutes and ruin the users battery in hours. Easier than long polling!") and in the end the situation didn't improve until Google stepped on the devs neck and forced them to use GCM/FCM and started actively powering down radio without apps input.
- Andrew_nenakhov 5y agoOh, so because of (some) dumb users let's punish everyone by making them subject to a monopoly lock-in. Great reasoning. Users have very effective recurse against poorly behaving apps: uninstall. You just need to inform users that the app X does use much battery. Then it should be up to the users to decide if to allow this behaviour or uninstall this app. Maybe an explicit permission to run in the background. That's it. Solution that you like is also very beneficial for OS vendor, how convenient.
- thebean11 5y agoEvery single app that uses notifications needing to run in the background is not a scalable solution.. Even correctly behaving apps will consume much more power and network with this scheme.