Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Pardon my ignorance, but why do you see this as an Android-only problem?

Surely every possible operating system suffers the same problem, no?



Not me551ah, but the problem with Android is that:

1. iOS is an Apple operating system. Every iOS device has a daemon running a service that connects with Apple's APNS (Apple Push Notification Service), and that service routes the notifications of every App to the user's device. APNS is non-negotiable, every iOS device has it running, and every App that wants to [reliably] deliver notifications must use it. It's part of the OS, so the OS won't kill it, in fact, if it crashes, the OS restarts it. It also means it's "well behaved", meaning it won't mine cryptocurrencies in the background (unless Apple breaks bad and decides that it's $1T value is not worth it anymore).

2. Android is not a strictly Google operating system. Google has it's APNS analogous, GCM (Google Cloud Messaging), but not every Android device has ties with Google, its open source, meaning millions (billions?) of Android devices out there are running without any Google ties. So in turn, many Apps device to have their own background tasks running all the time, with a persistent connection to the server to watch for notifications. Problem with this it's okay when you have 10 Apps with notifications, not when you have 100 Apps with notifications, each one having it's own background service. Some Android OEM's want their users to have great batt life and kill those background services, leaving notifications dead.


GCM is replaced by FCM.

Also, sure, some user might run pure Android and not have a centralized push notification system, but that is not the problem people usually might be experiencing.

The power management and priority system is rather complicated on Android and incoming notifications might be deferred or not shown at all(to avoid wasting power on low priority notifications) depending on app, app usage and settings.


iOS notifications are in a separate system and do not need any part of the host app to be started to receive them.


Apple is a closed ecosystem, so the OS that Apple builds is what goes into the end device. Android is open so manufacturers have the ability to add other privileged processes in addition to what is shipped with the default OS. These processes can monitor other processes and kill them in such a way that they can't wake up or display notifications until they are opened once by the user. These processes are usually added to extend battery life and make the device more responsive by limiting background applications.


No, only Android suffers of these hacky issues because Google allows manufacturer to customize Android way too much. Android is the modern equivalent of Windows XP themes if you want to compare.


Or Linux distributions.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: