didReceiveRemoteNotification not called then battery is less than 20%

Hello,


We currently sending silent pushes to our App when its on background, which performs some networking activity on the bacground,

Everyhing is fine until the Device battery drops below 20%, We still receive the push elert dialog on the device screen, but the didReceiveRemoteNotification its not get called and we are not able to do a networking call.

Any idea on possible reasons for that would be great to hear.

P.S. When the device promtes for "Low power mode" we tick Cancel.

Replies

Are you willing to share a sample body of your apns payload? When you submit your silent push to APNs, did you ensure that priority is set to 5 and your badge, sound, and alert keys are not specified?


A few other things to check:

1. Background app refresh

2. Low data mode


Check out the "advances in networking part 2" from this summer, specifically the part about changes to "background fetch" when the new "low data mode" is enabled. Background fetch is described as something that WONT be executed if the user has low data mode enabled for their currently connected network.

I have the same problem, could you solve it? Regards.
Background push notifications are throttled depending on the power state the device is in, along with a number of other criteria.

The WWDC 2020 video "Background execution demystified" (https://developer.apple.com/videos/play/wwdc2020/10063/) explains the factors that effect background runtime.