我目前正在开发一个应用程序,它有一些非常苛刻的需求。
该项目
需要一个可以与服务器通信的应用程序。必须将小消息发送到可以显示通知或启动活动的应用程序。
需求
客户需要确保电话始终处于“连接”状态。
客户端期望应用程序可以知道它何时不再连接(或无法连接)到它告诉用户的服务器。
客户端需要能够向单个设备发送消息
如果客户端需要向连接的设备和单个设备广播消息。
我的想法(或问题)
目前,应用程序每分钟使用一次 http 请求轮询服务器 - 如果应用程序无法连接到服务器,用户会收到通知。轮询能够告诉哪个设备正在呼叫并告诉它是否有消息。
但...
IMO 这是一个糟糕的设计 - 它会产生大量多余的流量,使用可能不是必需的资源,并且它提供了很多连接问题(我不确定无论哪种方法我都会过去)用过的)。
我需要您的经验来为我的项目选择正确的解决方案。
我一直在考虑 C2DM,但我不确定这是否能满足我的需求?投票是我唯一真正的解决方案吗?有没有我没有想到的第三种选择?