Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

I want to push notifications to around 50,000 users at a time and about 50 notifications per day, is it a good choice to use GCM in this case? If not can i know which other push services can i use , i dont mind even if its a paid service.. Thanks in advance

One notification can send only to 1000 devices (GCM limit).So you must split your array of devices. 50.000 users its ok for GCM.

Our application serve 100.000 users.

As case you can use airpush notification service: http://www.airpush.com/

Also google says it does not guarantee delivery of messages , so is it reliable in that case? user1918034 Dec 28, 2012 at 11:50 Note that the order of delivery is not guaranteed. And it is not guaranteed to work with the new version of application. developer.android.com/google/gcm/adv.html Yahor10 Dec 28, 2012 at 11:55 Send GCM to your client.Then in onMessage(Context context, Intent intent) method send feedback to your server and get data that your need (by URL or socket). Yahor10 Dec 28, 2012 at 12:28 Isn't AirPush an ad network? There are other commercial services like a airbop.com (which I helped create and urbanairship.com both of which use GCM . GCM does guarantee that the will send messages in the order they receive them but they cannot guarantee the order that they receive them in. It is quite reliable. selsine Dec 28, 2012 at 19:16

I think that GCM is a good choice to use. It's reliable and using it helps to conserve battery and data usage since it piggybacks other Google services. All you need is Android 2.2 or later with the Google services installed, which means no Kindle Fire.

I do not think that GCM would have any problems handling the number of messages or devices that you gave.

If you use it you will still have to write your own server component to handle registrations and message sending. I wrote a blog post that describes how this works.

Some commercial services that handle the server component for you (as well as other things) are AirBop , UrbanAirship , and ClixAp . Parse is a commercial solution that (I believe) does not use GCM. As I noted in the comment above I helped create AirBop

Like others we struggle with GCM as well for some time. However we believe we have finally figured out the factors which affect the performance of GCM the most:

For fastest delivery of Notifications with least amount of jitter: 1. delay_while_idle - set to false 2. time_to_live - set to zero (but we have set to 30 for just in case) 3. Canonical IDs - Make sure Canonical IDs returned by GCM replace the old PushID in database 4. collapse_key - The most important factor - set it to random or TOD to avoid Google to throttle notifications

With these, our GCM is working satisfactorily. Good wishes, post if you still have issues.

We use the current value of the time rather than random better word would have been unique. SC-SL Dec 30, 2013 at 15:20 @SC-SL at mosts, how many broadcast did you use? (/1000); I want to know if it's capable for n (0-50) times (@10k-200k) broadcast at for each hour. Kokizzu Jun 4, 2016 at 5:03

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question . Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers .