I am developing a VoIP app for iPhone. To receive calls, Apple developed PushKit so developers can send VoIP notifications using APNS.
Everything was working fine on iOS 8. When I updated to iOS 9, the PKRegistryDelegate
does not fire the method didUpdatePushCredentials
after registration.
Any ideas/suggestions?
If you're running a newer xcode (I'm on xcode 9) then VOIP is not in the Background section on the Capabilities tab. This will prevent
didUpdatePushCredentials
from being called!The trick is you have to go in your plist, and in
Required Background Modes
you need to addApp provides Voice over IP services
.Enabling the "Push notification" flag from Project->Capabilities solved my issue. It's strange because it was working without it earlier. This reply maybe late but hopefully this helps someone. I had a hard time figuring this out.
So I had this problem as well, and spent two days pulling my hair out. I did all of these:
All of this did not help.
Then, for some reason i thought, what if i just turn my phone, which i was testing with, off and on again.
and then it worked...
For me It was the issue of Certificates. The development certificate was used by my app, did not configured push in that certificates. Hope this may help anybody..