android平台的即时通信系统实现androidinstantmessagingsystem(源码)【字数:18195
摘 要摘 要如今的移动设备、便携式设备是多功能的,我们在手机上安装了各式各样的应用程序,这些移动应用程序给我们带来很多的便利,通过这些应用我们就可以足不出户知天下。其中,我们使用得最为频繁的当属IM(Instant Messaging),即时通讯的应用软件,它可以让我们随时随地、轻松方便的联系朋友、同事以及家人,这也让它成为了互联网中主要的通讯方式之一。本文主要介绍的内容是在安卓平台下,实现一个即时通讯应用程序的过程,在Android Studio工具环境下使用Java语言来实现客户端的设计,通过分析XMPP协议,采用了开源的Openfire服务器作为本次开发的服务端。服务端作为一个中转站,接收客户端发送的请求,经过处理后转发给客户端相应的响应信息,把响应结果反馈到客户端的UI显示层。本即时通讯系统从需求分析设计,直到程序最后的实现调试都是基于软件工程的开发步骤进行的,最后实现了用户申请账号,修改个人信息,实时聊天,语音发送,群组聊天等功能,在开发过程中,遇到了不少困难,但也总结了很多关于安卓应用的开发经验。关键词即时通讯;XMPP;安卓
目 录
第一章 绪论 1
1.1 课题背景 1
1.2 国内外现状 1
1.3 研究目的及意义 2
第二章 相关技术介绍 3
2.1 安卓系统介绍 3
2.1.1 安卓系统架构 3
2.1.2 安卓的四大组件 4
2.1.3 Android Fragment 5
2.2 XMPP协议 7
2.2.1 Jabber协议 7
2.2.2 XMPP体系架构 7
2.2.3 XMPP地址格式 8
2.2.4 XML流 9
2.2.5 XML Stanza 9
2.3 本章小结 11
第三章 可行性研究与需求分析 12
3.1 可行性研究 12
3.1.1 技术可行性 12
3.1.2 经济可行性 12
3.2 需求分析 12
3.2.1 系统用例分析 13
3.2.2 系统功能需求 13
*好棒文|www.hbsrm.com +Q: ¥351916072$
3.2.3 非功能需求 14
第四章 系统设计 15
4.1 系统的数据库设计 15
4.1.1 服务端数据库 15
4.1.2 客户端数据库 17
4.2 系统功能原理 19
4.2.1 服务器处理消息 19
4.2.2 客户端处理消息 21
4.3 系统的功能设计 22
4.3.1 用户注册功能模块设计 22
4.3.2 用户登录功能模块设计 23
4.3.3 添加好友功能模块设计 24
4.3.4 删除好友功能模块设计 25
4.3.5 发送信息功能模块设计 26
4.3.6 接收好友信息功能模块设计 27
第五章 详细设计 28
5.1 系统的详细设计 28
5.2 系统的模型层设计 29
5.3 系统的控制层设计 31
5.4 系统的视图层设计 32
第六章 编码与测试 33
6.1 系统的编码实现 33
6.1.1 XMPP网络访问的连接实现 33
6.1.2 用户登录功能实现 35
6.1.3 用户录音功能实现 36
6.1.4 用户发送信息功能实现 37
6.2 服务端的部署 41
6.3 客户端的测试 41
6.3.1 用户登录/注册界面 42
6.3.2 用户主界面 43
6.3.3 用户信息界面 44
6.3.4 好友列表界面 45
6.3.5 一对一聊天 46
6.3.6 群聊 47
6.4 测试总结 47
结 论 48
致 谢 49
参 考 文 献 50
绪论
课题背景
进入21世纪,互联网的飞速发展给人们的生活带来了翻天覆地的变化[1],涌现出了许多新型的生活方式,例如网购、网络通信、网上阅读追剧等等,我们生活中所做的一切几乎都离不开互联网,它已渐渐地成为了生活中不可或缺的一部分。
近年来,随着移动网络设备的广泛普及,主要就是Android平台和IOS平台的发展,人们对移动端应用的需求也日益增长。在通信方面,通讯软件的发展十分迅猛,从以前只能写信、通电话,到后来PC端的客户端聊天,再到现在移动平台的即时通信(IM)app,可以让我们随时随地和好友沟通联系[2]。然而,它又不仅仅只是一种简单的通讯交流工具,它还可以作为娱乐休闲的平台,用于商务上,还可以提高企业的工作效率,为企业提高经济效益。总而言之,网络通信软件已经成为网络应用的一大热门,即时通讯IM系统软件的开发是app市场发展的一个重要方向[3]。
即时通信,Instant Messaging,也就是我们通常所看到的IM的全称,是一种通过网络进行实时聊天、通信的服务。即时通讯与邮件EMail不同,IM的优势在于实时性,让实时传输信息变得更加便捷,更加迅速,它能让你明确知道聊天的对象是否在线,而不像发邮件,除了不知道对方的状态以外,还要反复地去操作一些发送的步骤,正因为如此才让即时通信变的如此受欢迎,它更像是电话通话或者说是一种面对面的交谈。如今,即时通讯工具已经从单调的文字聊天发展成为综合性服务工具[4]。
国内外现状
即时通信IM作为现时大热的一种互联网交流服务,它的存在弥补了传统通讯工具的不足,它允许双方或者多方实时进行通信,而且随着技术的不断完善,即时通讯已经不再局限于文字的传输,还可以相互语音,发送图片、文件,视讯通话等等,能够大大降低通讯费用,为人们提供了安全便捷的通讯工具。
最原始的IM软件是ICQ,它是在1996年诞生的,世界上首款IM软件,“我找你”的英文“I seek you”的谐音,虽然不够稳定,但还是受到大众的关注和欢迎。经过二十年的发展,功能完善、操作简易的IM软件在各大应用商城随处可见。
目 录
第一章 绪论 1
1.1 课题背景 1
1.2 国内外现状 1
1.3 研究目的及意义 2
第二章 相关技术介绍 3
2.1 安卓系统介绍 3
2.1.1 安卓系统架构 3
2.1.2 安卓的四大组件 4
2.1.3 Android Fragment 5
2.2 XMPP协议 7
2.2.1 Jabber协议 7
2.2.2 XMPP体系架构 7
2.2.3 XMPP地址格式 8
2.2.4 XML流 9
2.2.5 XML Stanza 9
2.3 本章小结 11
第三章 可行性研究与需求分析 12
3.1 可行性研究 12
3.1.1 技术可行性 12
3.1.2 经济可行性 12
3.2 需求分析 12
3.2.1 系统用例分析 13
3.2.2 系统功能需求 13
*好棒文|www.hbsrm.com +Q: ¥351916072$
3.2.3 非功能需求 14
第四章 系统设计 15
4.1 系统的数据库设计 15
4.1.1 服务端数据库 15
4.1.2 客户端数据库 17
4.2 系统功能原理 19
4.2.1 服务器处理消息 19
4.2.2 客户端处理消息 21
4.3 系统的功能设计 22
4.3.1 用户注册功能模块设计 22
4.3.2 用户登录功能模块设计 23
4.3.3 添加好友功能模块设计 24
4.3.4 删除好友功能模块设计 25
4.3.5 发送信息功能模块设计 26
4.3.6 接收好友信息功能模块设计 27
第五章 详细设计 28
5.1 系统的详细设计 28
5.2 系统的模型层设计 29
5.3 系统的控制层设计 31
5.4 系统的视图层设计 32
第六章 编码与测试 33
6.1 系统的编码实现 33
6.1.1 XMPP网络访问的连接实现 33
6.1.2 用户登录功能实现 35
6.1.3 用户录音功能实现 36
6.1.4 用户发送信息功能实现 37
6.2 服务端的部署 41
6.3 客户端的测试 41
6.3.1 用户登录/注册界面 42
6.3.2 用户主界面 43
6.3.3 用户信息界面 44
6.3.4 好友列表界面 45
6.3.5 一对一聊天 46
6.3.6 群聊 47
6.4 测试总结 47
结 论 48
致 谢 49
参 考 文 献 50
绪论
课题背景
进入21世纪,互联网的飞速发展给人们的生活带来了翻天覆地的变化[1],涌现出了许多新型的生活方式,例如网购、网络通信、网上阅读追剧等等,我们生活中所做的一切几乎都离不开互联网,它已渐渐地成为了生活中不可或缺的一部分。
近年来,随着移动网络设备的广泛普及,主要就是Android平台和IOS平台的发展,人们对移动端应用的需求也日益增长。在通信方面,通讯软件的发展十分迅猛,从以前只能写信、通电话,到后来PC端的客户端聊天,再到现在移动平台的即时通信(IM)app,可以让我们随时随地和好友沟通联系[2]。然而,它又不仅仅只是一种简单的通讯交流工具,它还可以作为娱乐休闲的平台,用于商务上,还可以提高企业的工作效率,为企业提高经济效益。总而言之,网络通信软件已经成为网络应用的一大热门,即时通讯IM系统软件的开发是app市场发展的一个重要方向[3]。
即时通信,Instant Messaging,也就是我们通常所看到的IM的全称,是一种通过网络进行实时聊天、通信的服务。即时通讯与邮件EMail不同,IM的优势在于实时性,让实时传输信息变得更加便捷,更加迅速,它能让你明确知道聊天的对象是否在线,而不像发邮件,除了不知道对方的状态以外,还要反复地去操作一些发送的步骤,正因为如此才让即时通信变的如此受欢迎,它更像是电话通话或者说是一种面对面的交谈。如今,即时通讯工具已经从单调的文字聊天发展成为综合性服务工具[4]。
国内外现状
即时通信IM作为现时大热的一种互联网交流服务,它的存在弥补了传统通讯工具的不足,它允许双方或者多方实时进行通信,而且随着技术的不断完善,即时通讯已经不再局限于文字的传输,还可以相互语音,发送图片、文件,视讯通话等等,能够大大降低通讯费用,为人们提供了安全便捷的通讯工具。
最原始的IM软件是ICQ,它是在1996年诞生的,世界上首款IM软件,“我找你”的英文“I seek you”的谐音,虽然不够稳定,但还是受到大众的关注和欢迎。经过二十年的发展,功能完善、操作简易的IM软件在各大应用商城随处可见。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/rjgc/874.html