我正在寻找在我的移动应用程序中使用的通信协议。第一个目标是Android,但如果在iOS,OSX和Windows 8等其他平台上支持它,它实际上会非常好。 主要目标是:
它必须非常节能,我们发送的消息实际上非常小,并且大部分时间都没有通信(它用于感知,并且更新不是很频繁)
它应支持间歇性连接并保证邮件传递应用程序不要错过更新非常重要
应该能够支持部分或全部消息的加密某些传感器数据包含隐私敏感信息
* 不应该需要持续连接* 这样应用程序可以在不使用时进入休眠状态。 Google Cloud Messaging在接收来自服务器的消息方面效果很好,但问题是要从客户端发送内容而无需保持连接活动。
之前的版本使用的是XMPP和JSON消息,但我认为这是一个坏主意,因为它需要一个持续的连接,并不意味着节能。
我想使用Protocol Buffers而不是JSON来实现更紧凑的表示和更快的序列化,但我对传输尚未确定。 MQTT在搜索时出现,它可能有意义,但它的加密支持不是很好,似乎需要保持连接。我想知道是否还有其他合适的候选人需要考虑。有什么建议或想法吗?