• AnEilifintChorcra@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    19
    ·
    1 year ago

    For android, Google uses Firebase Cloud Messaging, basically a server that pings the phone when a notification for an app is available, which wakes the app up to receive the notification. There are alternatives but they need to be adopted by app devs for them to work.

    For people running a degoogled android, they’ll notice most apps won’t receive any notifications until they open the apps since most apps rely on Google Play Services to receive a ping from FCM.

    I don’t have any google play services so most of my apps don’t give me push notifications but I do have WhatsApp installed and that still receives notifications, they’re sometimes delayed by a few minutes which makes me think Meta have their own implementation/alternative to FCM but I’m not sure.

    For Signal, their servers tell Googles FCM servers that you have notifications waiting on Signals servers and to wake up your Signal app so it can communicate with Signals servers to receive your messages.

    WhatsApp and Signal claim/have end-end encryption on their messages but that shouldn’t matter when specifically looking at Googles FCM servers so, at most it would be meta data that could be obtained from the FCM servers.

    https://jami.net/unifiedpush/ has a pretty basic explanation of push notifications on android and also showcases an alternative to FCM https://unifiedpush.org/ which has a nice little diagram about push notifications on android. Unfortunately, Unifiedpush is not widely adopted by many applications.

    So there are ways to avoid Googles FCM servers on android using Unifiedpush or always having the application on in the background but for the most part FCM is used.

    • DangerousInternet@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Thanks. I also found, that push encryption is not native and requires extra work and libraries to implement, not all devs would care about it.

      • AnEilifintChorcra@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I’m pretty sure Element stays active in the background, it may have asked you to turn off battery optimisation and have a silent notification always active. This decreases battery life which is why most apps don’t do this but it allows the app to constantly ping the server to check for new messages and is one way around using FCM.

        Fair email uses https://en.m.wikipedia.org/wiki/IMAP_IDLE instead of FCM, I’m no expert and this is just my guess but it seems to also need the app to run in the background for this to work.

        Silence is SMS and MMS only and so doesn’t use internet and so has no need for FCM or any alternative anyway