12

我的 Android 应用程序需要简单的推送通知来获知服务器上新数据的出现。Android 提供了看起来很合适的Google Cloud Messaging (GCM) 。

但是,运行低于 Android 4.0.4 的设备需要在手机上存在 Google 帐户(根据截至 2012 年 10 月 1 日的Google 平台统计数据,这目前约占 Android 手机的 75%)。而且,在不相关的应用程序活动中要求用户设置 Google 帐户似乎不是一种好的体验。

对于可以在 Android 平台上使用的更通用的推送机制有什么建议吗?例如, Amazon SNS的优缺点是什么?还有其他候选人吗?

4

3 回答 3

4

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

PushApps 现在可以使用一个新的 wiki 站点 - PushApps wiki

于 2014-01-13T09:26:47.767 回答
3

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

编辑:

首先,Parse 实际上只是 GCM 的一个包装器,因此它并不能真正回答您的问题,因为归根结底,它是 GCM 提供的一些服务,可以让您更快地启动和运行推送服务器。

二、Parse已宣布关闭,2017年1月28日后不再支持: Parse博客公告

第三,要真正回答您的问题,确实有一些 GCM 和 SNS 的替代品可以满足您的需求。在不详细介绍每种方法的优缺点的情况下,这里有一些可供您研究的替代方法:

  • 网络套接字
  • HTTP 长轮询
  • 根据您的用例,从服务器定期轮询(即每天轮询一次以获取最新通知的“提要”。
  • 某种类型的 MQTT 协议实现
于 2012-10-05T20:26:08.253 回答
1

对于 android 设备,一些不错的选择是GCM、Amazon SNS、Urban Airship。试试 Urban Airship,直到 Parse 对我来说是最好的选择,但他们将在 2017 年停止服务,所以这不是一个好的选择。

于 2016-03-30T07:46:39.343 回答