更简单的推送通知,也许问服务器是否有?
我在一个ide工作,我作为管理员可以发送通知给我的所有客户(移动)。 我一直在搜索并找到GCM和其他服务……我想知道是否有更简单的解决方案。
我想过每隔1小时从所有客户端(移动)到我的服务器进行rest呼叫,以检查新的通知。 如果有,请获取它们然后在客户端(移动)上显示这些通知。
轮询将导致更多的电池寿命消耗和一些其他额外的不必要的过程(例如@MohammedAtif的评论中提到的),例如,当您的客户端应用程序调用您的服务器但最终为空时。 由于没有发生任何事情,这个过程被浪费了。
GCM不这样做。 关于它的流程,请参考官方文档 。
生命周期流程
- 发送和接收下游消息。
- 发送一个消息。 应用服务器将消息发送到客户端应用:
- 应用服务器向GCM连接服务器发送消息。
- 如果设备处于脱机状态,GCM连接服务器会将消息排入并存储。
- 当设备在线时,GCM连接服务器将消息发送到设备。
- 在设备上,客户端应用程序根据特定于平台的实现接收消息。 有关详细信息,请参阅特定于平台的文档
- 收到消息。 客户端应用程序从GCM连接服务器接收消息。
最近在I / O 2016中宣布,GCM的继任者现在是Firebase云消息传递 ,它不仅具有推送通知服务,而且还具有免费的其他function(一个例子是分析)。
总的来说,使用GCM(或FCM)是一种比轮询更简单的方法。 它处理您发送的消息和其他一些消息的排队。