Benefits of GCM for iOS?
I have a server and an Android app that uses GCM for push notifications, everything works well, I need to start building an iOS app to do the same. GCM currently supports iOS: https://developers.google.com/cloud-messaging/ios/start
My understanding of architecture looks like this:
Android GCM:
App-> GCM-> App-> Server (request / register tokens)
Server-> GCM-> Application (sending push notifications)
Is GCM correct for iOS?
App-> APNS-> App-> GCM-> App-> Server (request / register tokens)
Server-> GCM-> APNS-> Application (sending push notifications)
If my understanding is correct, why use GCM as it adds an extra layer and possibly delays in push notifications? Are APNS limits / handled by GCM? (i.e. payload size, message storage time, collapse key support)
source to share
Your understanding is correct. The advantage of GCM is that your server needs to implement the GCM interface to send notifications on Android and iOS. The APNS interface is somewhat cumbersome and more difficult to operate.
In addition, GCM provides some advanced features such as topics, data messages (up to 4k), upstream messages (device to server), delivery receipts, etc. They may or may not be helpful to you.
And no, GCM doesn't work with APNS restrictions.
source to share