| ▲ | vintagedave 18 hours ago | |||||||
Unfortunately the article doesn't answer the question. I was hoping for an investigation. Whatsapp is #4 in battery usage on my phone, and has spent more time in background mode (9 minutes) than active (6 minutes.) Not nearly as bad as the author but I have to admit, I don't understand why it could spend anywhere near that much time doing anything. All it needs to do is be sent a new message. | ||||||||
| ▲ | kees99 18 hours ago | parent | next [-] | |||||||
> All it needs to do is be sent a new message. Receiving a message in a timely manner, is far more energy-intensive, for two reasons: - modern Internet, with nearly universal deployment of NAT, is such that any app (or phone OS, for that matter) can only make outbound connections. That is, to receive, it must keep making outbound requests to the server, constantly asking "is there a message for me?"; - modern android (and iOS too) has some pretty aggressive algorithms/rules to identify apps that can be safely suspended (i.e. denied the right to run in background). One such rule is "no activity within X amount of time". So, ironically, app has to waste CPU cycles to convince OS to keep it running. There is an OS-level mechanism in both Android and iOS to avoid the second problem above, by the way of OS doing the polling (so-called "push notifications"), but there are their own dragons there, so many apps out out. | ||||||||
| ||||||||
| ▲ | sparqlittlestar 15 hours ago | parent | prev [-] | |||||||
I believe I read somewhere that WhatsApp gets awoken by a silent notification with the cyphertext from the Notification Service, which it then needs to decrypt before generating a local notification that actually gets displayed to the user. This was due to e2e, as/so the Notification Service can't have the plain text. Edit: as a possible explanation for the battery drain? | ||||||||