我应该为即时通讯软件使用低级还是高级协议?
问题描述:
我目前正在规划一个Android的即时信息/ 实时聊,但我不能肯定,如果我要使用一个低水平(如TCP )或高级别协议(例如,XMPP)。我应该为即时通讯软件使用低级还是高级协议?
非常感谢。
答
仅凭TCP,您只需获得一个空的裸露网络连接,您将不得不传输数据。有很多工作要做。
使用XMPP,您可以依靠完整的协议(连接,数据格式,工作流程)。您还可以从现成的成熟软件实施中受益,例如MongooseIM和Tigase用于服务器端,以及客户端库,例如iOS上的XMPPframework和Android上的Smack。
您也可以使用AMQP或MQTT协议或某种与移动推送通知(APNS和/或GCM)结合使用的REST API。
许多优秀的问题根据专家的经验产生了一定程度的意见,但对这个问题的回答往往几乎完全基于意见,而不是事实,参考或具体的专业知识。 –