随着计算机网络技术的发展与普及,网络已经融入了我们的日常生活。其中即时通讯软件在网络应用中占有重要的地位,与早期的通讯软件不同,如今的通讯软件运行的平台已经由过去的单一PC平台扩展到手机端等多种平台。一方面,设备的千差万别造成了应用软件设计的复杂性增加,而另一方面,开发跨平台通讯软件的需求越发得到重视。Socket.IO是一个封装了多种通讯方式实时通讯引擎,用于实现基于事件的双向实时通讯。其可以运行在多种系统,浏览器和移动设备上,具有很高的可靠性与效率。本文的目标是以Socket.IO为基础,屏蔽不同运行环境下数据通讯之间的细节差异,设计一套可运行于多种终端上的跨平台实时通讯软件。通过对Socket.IO的核心组件Engine.IO的分析与研究,掌握了其建立通讯连接完成数据发送的核心原理,运用了面向对象的分析方法和多种设计模式。在结合于Node.js、AndroidAsync等技术的基础上,针对android客户端,pc客户端与web应用服务器端分别进行了详细的分析与设计。确定了移动端和pc客户端分别采用了C/S和B/S的不同架构方式,并实现了用户登录认证,上线提醒,私聊,群聊,下线通知,聊天记录保存等通讯软件必须具备的核心功能,最终完成了整个跨平台实时通讯系统的开发。