12

我的Android应用程序需要简单的推送通知才能获知服务器上新数据的外观。 Android提供了Google Cloud Messaging (GCM),看起来合适。Android推送通知:Google GCM与Amazon SNS?

但是,运行低于Android 4.0.4的设备需要在手机上存在Google帐户(截至2012年10月1日为Google platform stats,目前约为Android手机的75%)。在要求用户在无关的应用程序活动中建立Google帐户似乎并不是一个好的体验。

是否有任何建议可以在Android平台上使用更通用的推送机制?例如,什么是Amazon SNS的利弊&?其他候选人?

+4

您是否通过Google Play发布您的应用?如果是这样,你可以保证你的用户有一个谷歌帐户。此外,您只能通过Google Play使用GCM,而不能使用任何其他第三方分发模式。 – KDEx

+0

啊......有帮助。谢谢。 – gcl1

+3

@KDEx GCM即使在您自己的网站上发布APK(不受信任的来源),也可以工作。无需从Google Play下载即可与GCM一起使用。 Google Play必须使用已配置的帐户进行安装,但就是这样。 –

回答

3

我高度推荐Parse API。你可以在这里找到它:http://parse.com。它不仅适用于Android设备,还适用于iOS,JavaScript和REST的跨平台。您可以执行简单的文本推送消息,或者将JSON字符串发送到推送设备的复杂消息。我并不确定你的应用程序需要的范围(你可能需要更多的服务器端控制,尽管Parse现在也提供了一种在云中运行代码的方法),但绝对要检查一下Parse。

编辑:

首先,分析了实际只是GCM的包装,所以它不是真正的回答你的问题,因为它是在底线,GCM一些提供服务,以获得您可以更快地启动并运行推送服务器。

其次,解析已被宣布为关闭,并且将不支持2017年1月28日之后: Parse blog announcement

第三,要真正回答你的问题,确实有一些替代GCM和SNS能提供你所需要的。没有进入细节或优点/缺点每种方法,这里有几个选择,让你研究:从

  • 网络插座
  • HTTP长轮询
  • 根据你的使用情况,定期轮询服务器(即轮询一天一次,以获得最新通知的“饲料”。
  • 某些类型的MQTT协议实现的
+0

感谢您的建议。将检查出来...... – gcl1

+0

但是,如果您在亚马逊App Store中发布,似乎他们的通知不起作用。 – Ricardo

+10

那么,Parse API现在已经死了。 – Lockal

4

该服务还提供了一个通用的接口,Android和iOS,并且亩CH比解析便宜:PushApps

一个新的维基网站现已PushApps - PushApps wiki

+1

即时消息也使用本网站。 +1。 –

+0

也许你可以扩展如何使用* PushApps *服务。 – cpburnz

+0

PushApps是一个网站,它允许您轻松地将通知发送到iOS或Android平台上的应用用户。例如:如果您使用Android,则只需在该处提供您的gcm api密钥,然后即可开始发送通知。他们正在与Google进行全面整合,并向您提供有关您发送的通知的统计信息。你可以看看他们的wiki - wiki.pushapps.mobi –

1

对于Android设备一些好的选项GCM,亚马逊SNS,城市飞艇。 尝试城市飞艇 直到然后解析对我来说是最好的选择,但他们在2017年停止他们的服务,所以它不是一个好选择。