I had the same problem and I sent a detailed question later. Fortunately, I understood the problem, and now it works for me. I did not send the data in the proper format, which worked after I sent the data in the proper format. My JSON format looks like this.
{ "notification":{ "badge":"12", "alert":"default", "sound":"default", "title":"default" }, "content_available":true, "to":"YOUR_KEY_HERE" }
Since in your implementation there is no data on the server. You can send my question for more information.
GCM push notification for iOS with content_available (does not work for calling from an inactive state)
source share