Earlier quoted context omitted.
When the user is not running the app, what is the use case for the app waking up and processing data that is not an incoming message to be delivered to the user? Facebook was using the VOIP framework to burn so much power after the user had quit the app that you would see articles pointing out that deleting the Facebook app could double the battery life of the device. >Deleting This 1 App Can Literally Double Your Ph…
The use case here is to keep it private when exactly you are receiving a message. The push API requires that the server know when data indicates a user-visible message and when it does not, and the maximally private messaging app server wouldn’t need to know that. There is certainly a trade off between privacy and battery life here. If Apple stated that they were sacrificing a small bit of privacy for improved batter…
I literally can't think of a single other thing that should happen unless and until the user opens the app, at which time the app can open an encrypted connection to the server and exchange any sorts of messages it likes.