There is a way, using that you can process your every push notification. add key content-available with value 1 in to your aps dictionary.
so it will look like,
{
"aps" : {
"alert" : {
"title" : "Game Request",
"body" : "Bob wants to play poker",
},
"badge" : 5
"content-available" : 1
}
}
If iOS system detects pushNotification with "content-available" key having value 1, it will call application:didReceiveRemoteNotification:fetchCompletionHandler: of your appDelegate.
Apple - Discussion
Use this method to process incoming remote
notifications for your app. Unlike the
application:didReceiveRemoteNotification: method, which is called only
when your app is running in the foreground, the system calls this
method when your app is running in the foreground or background. In
addition, if you enabled the remote notifications background mode, the
system launches your app (or wakes it from the suspended state) and
puts it in the background state when a remote notification arrives.
However, the system does not automatically launch your app if the user
has force-quit it. In that situation, the user must relaunch your app
or restart the device before the system attempts to launch your app
automatically again.
You need to enable background modes.
