Push notifications on Android: Google GCM vs. Amazon SNS?
Asked Answered
A

3

12

My Android app needs simple push notifications to be informed about the appearance of new data on a server. Android provides Google Cloud Messaging (GCM) which would seem to fit.

However, devices running lower than Android 4.0.4 require a Google account to be present on the phone (per Google platform stats as of 10/1/2012, this is currently about 75% of Android phones). And it does not seem to be a good experience to be asking users to set up a Google account in the middle of an unrelated application activity.

Are there any suggestions for a more universal push mechanism that can be used on the Android platform? For example, what are the pros & cons of Amazon SNS? Any other candidates?

Affiant answered 5/10, 2012 at 20:20 Comment(2)
Are you distributing your app via Google Play? If so you're guaranteed that your user's have a google account. Additionally you can ONLY use GCM via Google Play and not in any other third party distribution model.Cuirass
@Cuirass GCM does work even if you publish your APK on your own website (untrusted sources). It does not have to be downloaded from Google Play to work with GCM. Google Play has to be installed with a configured account but that's it.Powered
C
4

This service also provide a generic interface to Android and iOS, and is much cheaper than parse: PushApps

A new wiki site is now available for PushApps - PushApps wiki

Cloakanddagger answered 13/1, 2014 at 9:26 Comment(3)
im also using this site . +1.Habilitate
Perhaps you could expand upon how to use the PushApps service.Extravaganza
PushApps is a site which allows you to easily send notifications to your app's users in either iOS or Android platforms. For example : if you use Android you only need to simply provide your gcm api key there and you can start send notifications. they are doing all the integration with Google and give you statistics about your sent notifications. you can check out their wiki - wiki.pushapps.mobiHabilitate
K
3

I highly suggest the Parse API. You can find it here: http://parse.com. Not only is it universal for Android devices, but is also cross platform for iOS, JavaScript, and REST as well. You can do simple text push messages, or complex ones that send a JSON string to the pushed device. I'm not exactly sure the scope you need for your app (you may need more server-side control, although Parse is now providing a way to run code in the cloud as well), but definitely check out Parse.

EDIT:

First, Parse was really just a wrapper around GCM, so it wasn't truly an answer to your question because it is, at the bottom line, GCM with some provided services to get you up and running with a push server more quickly.

Second, Parse has been announced as shutting down, and will not be supported after January 28, 2017: Parse blog announcement

Third, to truly answer your question, there are indeed some alternatives to GCM and SNS that can provide what you need. Without going into detail or pros/cons for each approach, here are a few alternatives to get you researching:

  • Web sockets
  • HTTP long-polling
  • Depending on your use case, periodical polling from the server (i.e. poll once a day to get a "feed" for the latest notifications.
  • Some type of MQTT protocol implementation
Keare answered 5/10, 2012 at 20:26 Comment(2)
But it seems their notifications don't work if you publish in the Amazon App Store.Communist
Well, Parse API is dead now.Loralorain
E
1

For android Device some good options are GCM, Amazon SNS , Urban Airship. Try Urban Airship Till yet Parse was the best option for me but they are discontinuing their service in 2017, so its not a good option.

Estrogen answered 30/3, 2016 at 7:46 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.