iOS refuses to pass content-available notification to app if network signal low

Originator:david.hoerl
Number:rdar://19243255 Date Originated:12/13/2014
Status:Open Resolved:Dup of 18645681
Product:iOS Product Version:8.1
Classification:Serious Bug Reproducible:Always
 
Summary:
I wrote a bug (19032099), marked resolved, where it appeared to me Silent Push was broken in iOS 8.x In the end I saw this in my console log: "Dec 13 10:15:31 David-Hoerls-iPad apsd[83] <Warning>: Silent Push: Deny app no resources reason: cell quality 0 wifi quality 0 ." Moving my device closer to a wifi hotspot resulted in every push making it, where before everyone failed.

Now, but not make it - I mean that iOS refused to pass it to me - I could see the app badge change, so knew iOS got the notiification, it just didn't pass it to me - so all the metadata contained in the push was lost (unless you provide the push later, I have a test in progress).

But really - the issue is - if iOS gets the notification, it should pass it to the app. Most background apps are going to schedule a background NSURLSession. iOS could also return no wifi no cell in Reachability and/or refuse to turn on the transmitters - that I wouldn't mind. But completely tossing the notification seems really drastic. Who knows when the user is going to be in a strong WIFI zone next?

Steps to Reproduce:
- Run your app that accepts background silent push notifications
- Get near a strong WIFI signal
- background the app and send a push containing a new badge value
- See the badge change and the app respond (in my case with a local notification)
- now move the app where you only see 1 bar of WIFI
- send a new push, with a new badge number

Expected Results:
If the badge changes, iOS got the notification, it should supply it to my app.

Actual Results:
When the WIFI signal is weak, the notification is never provided to my app.

Version:
iOS 8.2 beta 2 (but probably the same in 8.1)

Notes:
I left the iPad out for 10 minutes waiting to see if the notification would get delivered. If I ever get it, I'll update this bug report.

Configuration:
iPad 3 WIFI+Verizon (cellular disabled)

UPDATE:
So after about 20 minutes of sitting in a strong WIFI zone, iOS finally delivered the notification to my app. Still, it should have been delivered, and let me schedule what I needed to do right away. The device was still usable in the weak WIFI zone - I could web surf for instance.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!