Is there any daily limit for number push notifications (GCM) can be sent to a particular android application user?
9 Answers
After Google replaced C2DM with GCM, they took off all limits.
SOURCE: http://developer.android.com/google/gcm/c2dm.html#history
Prior to GCM (when it was still called C2DM): https://developers.google.com/android/c2dm/#limitations)
The only limits you run into the GCM documentation is this: http://developer.android.com/google/gcm/adv.html#lifetime
Quote from the above link:
Note: There is a limit on how many messages can be stored without collapsing. That limit is currently 100. If the limit is reached, all stored messages are discarded. Then when the device is back online, it receives a special message indicating that the limit was reached. The application can then handle the situation properly, typically by requesting a full sync.
I am not sure if this is relevant to your question though.
Doesn't seem there's a set numerical limit, but there are throttling measures in place.
To prevent abuse (such as sending a flood of messages to a device) and to optimize for the overall network efficiency and battery life of devices, GCM implements throttling of messages using a token bucket scheme.
If an application collapse key exhausts its supply of available tokens, new messages are buffered in a pending queue until new tokens become available at the time of the periodic grant.
Via: https://developers.google.com/cloud-messaging/server#throttling
Edit/Update:
Just to update, the doc for throttling can now be found in the GCM Advanced Topics: http://www.androiddocs.com/google/gcm/adv.html#throttling
There NOT any daily limit for number push notifications (GCM) but Via Official Source GCM Advanced Topics it states that
There is a limit on how many messages can be stored without collapsing. That limit is currently 100. If the limit is reached, all stored messages are discarded. Then when the device is back online, it receives a special message indicating that the limit was reached. The application can then handle the situation properly, typically by requesting a full sync.
Hope it will Help.
Tried to send over 1000 pushes from java code com.google.android.gcm.server.Sender "send" method, attempt fails.
https://developers.google.com/cloud-messaging/http-server-ref For Downstream HTTP messages (JSON):
param name - registration_ids type - String array
This parameter specifies a list of devices (registration tokens, or IDs) receiving a multicast message. It must contain at least 1 and at most 1000 registration tokens.
Use this parameter only for multicast messaging, not for single recipients. Multicast messages (sending to more than 1 registration tokens) are allowed using HTTP JSON format only.