当前位置: 首页 > 知识库问答 >
问题:

Android上的推送通知:Google GCM与Amazon SNS?

巫马淳
2023-03-14

我的 Android 应用需要简单的推送通知,以获取有关服务器上新数据外观的通知。Android提供了谷歌云消息(GCM),这似乎很合适。

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

有没有可以在Android平台上使用的更通用的推送机制的建议?例如,有哪些优点

共有3个答案

於炯
2023-03-14

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

柴宝
2023-03-14

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

编辑:

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

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

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

  • 网络套接字
  • 长轮询
  • 根据您的用例,从服务器定期轮询(即每天轮询一次以获取最新通知的“源”。
  • 某种类型的 MQTT 协议实现
司徒良哲
2023-03-14

该服务还为Android和iOS提供了通用接口,比parse:PushApps便宜得多

一个新的维基网站现在可用于推送应用程序 - 推送应用程序wiki

 类似资料:
  • 问题内容: 我正在开发一个应用程序,在该应用程序中,我需要实现推送通知。谁能建议我应该如何实施推送通知?如果可以为我提供一个很好的教程,那就太好了! 谢谢。 问题答案: //在应用程序启动时调用 //清单文件中的更改 // ReceiverC2DM.java ..... //服务器端…新测试应用 ServerSimulator.java

  • 我正在尝试使用GCM推送通知。我的设备已注册到服务器,并且我还创建了设备注册id。但当我试图从服务器发送消息时,消息不会到达已注册的设备。谁能帮帮我吗? 我的主要activity 软件包COM.ATI.GCM; 导入com.google.android.gcm.gcmRegistratar; 导入Android.os.AsyncTask; 导入Android.os.bundle; 导入androi

  • 以下是我的通知案例:当通知到达时,应用程序可能是前台,后台,或关闭 2.后台:当用户点击通知时,应用程序应显示在前面,并显示主要活动 3.App关闭时:当用户点击通知时,App应打开,并显示主要活动。 当我用设置intent和用设置PendingIntent时。它按预期工作,但当用户点击notification时,它不会调用Main Activity的onCreate方法。 如果您考虑了上面的代码

  • 我没有收到Android推送通知。我能够 < li >注册设备 < li >接收设备标识符 < li >将通知消息推送到GCM 我成功进入通知发送事件,但我的设备上没有收到任何消息。成功的推送代码如下:

  • 首先,我想声明我一直在研究推送通知和web通知之间的关系,但我有点困惑。 我从这里读到PWAs的推送通知在Safari上的iOS(iPhone)不起作用:从PWA向iOS发送推送通知 然而,如果iPhone用户使用的是Chrome,这是否意味着它们可以工作呢?或者推送通知在任何浏览器上对iPhone中的PWAs都不起作用? 这就把我带到了web通知。web通知在后台对PWAs起作用吗?我的问题是w

  • 我正在我的应用程序中实施第三部分服务(FreshChat,一种允许您将帮助台集成到应用程序或网站中的服务),除了聊天的推送通知之外,一切都很好。Freshchat通过Firebase工作(Firebase推送通知不会出现问题),但Fresat通知不起作用。我遵循了newchat的官方留档,但有已弃用的方法,绝对不起作用(我尝试了很多) 这是Firebase云消息传递代码: 以及FreshChat文