26

I have disabled WhatsApp's access to Internet by disabling both WLAN-usage and mobile network usage.

I thought this should block WhatsApp from accessing the internet. But miraculously WhatsApp gives me a message with ominous content: "You might have new messages"

When I open WA it does not show any messages. When I then give it back it's access rights wonder what, there are messages I received the same day!

So to me it looks as if this app has found its way to sneak around my network restrictions.

So the following questions arise:

  • Is my assumption about the effectiveness of restricting the "data usage" for apps wrong?
  • Does WhatsApp hack around the standard restrictions?
  • Out of curiousity, why are you blocking whatsapp's internet access? – Nzall Sep 13 '19 at 11:23
  • 1
    @Nzall I want to cease using WA (different causes) and communicate using different messenger systems. To encourage my contacts to use either Threema, Signal or Ginlo, I don't want to respond to their messages for a while but sent some autoresponder messages. If WA stays online on my phone, most people will say: "see, you are still using WA, so why should I change to a different system?" Sounds difficult, is difficult, but works. 9 out of 10 of my contacts now message me by other means. – Ariser - reinstate Monica Sep 13 '19 at 11:36
  • 1
    I see, and you can't uninstall Whatsapp or set yourself as offline? There is an app called W-Tools that should allow you to do so. – Nzall Sep 13 '19 at 11:38
  • 2
    You explicitly didn't ask how to prevent WhatsApp from doing this. So here as a comment: If you switch to microG instead of Google Play Services, then you can disable app's access to Google Cloud Messaging from its settings. – Nobody Sep 13 '19 at 14:50
  • 2
    This question about firewalls is related: Receiving App Notifications from apps that are blocked by a network firewall – mattm Sep 13 '19 at 21:25
37

App developers can tell better but what I perceive is that many modern apps use Firebase Cloud Messaging - a proprietary service from Google, not part of AOSP - for push notifications. In fact developers are forced to use Google's proprietary products unnoticeably. Quoted from here:

The Doze restriction on network access is also likely to affect your app, especially if the app relies on real-time messages such as tickles or notifications. If your app requires a persistent connection to the network to receive messages, you should use Firebase Cloud Messaging (FCM) if possible.
...
FCM is optimized to work with Doze and App Standby idle modes by means of high-priority FCM messages.

FCM is a part of Google Play Services (1):

FCM SDK's only hard dependency is Google Play Services

Play Services is a set of apps which are injected to Android devices with highly privileged permissions, so they aren't subject to data/battery restrictions.

Since you have blocked only the app and not Play Services, app may receive push notifications (though the actual data may not be delivered to the app).

So block GMS in order to block push notifications. Or choose the apps which aren't fond of Google.

RELATED: What is the exact functionality of Google Play Services & Services Framework?

| improve this answer | |
20

WhatsApp can't access the internet at then moment. However it still receives the configured push notifications via Google Play Services. The Google Play Service is a different app on your device that still has Internet access.

Those push messages don't contain the actual message and WhatsApp just uses them as a notifier. Whenever such a push notification message arrives WhatsApp knows that there are new messages and tries to contact the WhatsApp server to retrieve it.

In your case the connection to the WhatsApp server fails and WhatsApp only displays you the message "You might have new messages".

| improve this answer | |
5

No, WhatsApp does not hack around the network restrictions.

The app, after a certain amount not being able to connect to its server because you have disabled internet connection, is just guessing. That's why you get the message: "You may have new messages" from its Failure notifications channel.

From How to stop WhatsApp 'You may have new messages' notification:

As such, though WhatsApp is running and mobile data is turned on, it may not be able to access the internet. It's only recourse is therefore to throw this notification as a guess since I suspect it can’t tell the difference when a poor network is to blame and when its network rights are being micromanaged by the OS.

| improve this answer | |
  • 4
    WhatsApp uses FCM push notifications to notify the app when there are new messages. FCM is part of Google Play Services and so works even if the app itself has no network access. Normally, the WhatsApp server pings the WhatsApp app via FCM, the app wakes up and checks for new messages, decrypts them, and shows a notification. But in this case, it's unable to check for new messages, so it just reacts to the ping by saying "you may have new messages". – vurp0 Sep 13 '19 at 9:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.