3 ms·
Is that because carriers have put GCM/FCM on some sort of white-list?
by nbevans 8y ago
Is that because carriers have put GCM/FCM on some sort of white-list?
- pas 8y agoProbably because GCM/FCM has been very well optimized.
- wasyl 8y agoWhile it's likely true, GCM/FCM is handled by Google Play Services, which is whitelisted and has I believe system-level permissions. It has less restrictions than a regular app exempt from battery optimisations, as it's supposed to be the only app that needs to run in order to coordinate things like push messages or location updates across all apps on the device edit: I missed that the original post was talking about keep-alives and you were probably referring to them. But how app-level optimisations can help with keep-alives?
- fyfy18 8y agoTCP connection can be open and idle for hours without keep alives. This can easily be configured with kernel parameters: https://www.tldp.org/HOWTO/TCP-Keepalive-HOWTO/usingkeepalive.html https://www.tldp.org/HOWTO/TCP-Keepalive-HOWTO/usingkeepaliv... I suspect the hard bit for normal apps is keeping the app active on the device while it is in the background. Google has their FCM receiver running as a low level service so can make sure it is always running.
- ktjfi 8y agoYou can configure it locally in your kernel, but your ISP will most likely close your connections for you, especially if you're behind a CGNAT.
- londons_explore 8y agoEven if you have native IPv6, some carriers do connection tracking anyway to prevent random port scans from the internet waking up your phone or trying various exploits.
- est31 8y agoYes. Google/Apple have special deals with carriers. https://0xacab.org/leap/bitmask_android/issues/2226#note_92144 https://0xacab.org/leap/bitmask_android/issues/2226#note_921... https://news.ycombinator.com/item?id=17946320 https://news.ycombinator.com/item?id=17946320