I have been able to successfully create push notifications and I have also received responses from the feedback service, so I am confident that my configuration is correct, but I was wondering, how long after a device has been made inactive, will it be picked up by the Apple Push Notification Service.
When I first polled the feedback service, I received details on devices which were inactive several days ago. Now, while testing, when I uninstall the application and occasionally poll the feedback service, I'm not receiving any results.
Any idea on how long it takes to update would be useful, as I'm no longer sure if the issue is else where in my code or if I'm just testing too soon.
Issues with Using the Feedback Service
If you remove your app from your device and then send a push notification to it, you would expect to have the device token rejected, and the invalidated device token should appear on the feedback service. However, if this was the last push-enabled app on the device, it will not show up in the feedback service. This is because deleting the last app tears down the persistent connection to the push service before the notice of the deletion can be sent.
You can work around this by leaving at least one push-enabled app on the device in order to keep the persistent connection up. Just install any free push-enabled app from the App Store and you should then be able to delete your app and see it appear in the feedback service.
source:
- http://developer.apple.com/library/ios/technotes/tn2010/tn2265.html#TNTAG34
After further investigation elsewhere, I discovered people suggesting that for testing feedback service, there should be two instances of the app on the iPhone. Test the feedback service by removing 1 of these and then attempt to send notifications to this removed app.
When I do this, the feedback service responds very quickly.
I do not have exact timings, but on my system, it feels like it is responding straight away after I make a call to attempt to push a notification and then immediately make a call to the feedback service.