基于Android手机的移动视频聊天系统

 2022-01-17 11:01

论文总字数:22240字

目 录

1 绪论 1

1.1 研究背景及现状 1

1.2 开发目的及意义 1

2 核心技术介绍 2

2.1 Android平台简介 2

2.2 系统C/S结构简介 2

2.3 JAVA语言简介 2

2.4 XMPP协议简介 3

2.5 TCP协议简介 3

3 系统分析 4

3.1 需求分析 4

3.2 可行性分析 4

3.2.1 技术可行性 4

3.2.2 经济可行性 5

3.2.3 运行可行性 5

3.3 系统要求 5

4 系统设计 5

4.1 系统概要设计 5

4.2 系统详细设计 6

4.2.1 用户注册登录模块 6

4.2.2 好友信息管理模块 6

4.2.3 文本聊天模块 7

4.2.4 语音聊天模块 7

4.2.5 视频聊天模块 7

4.3 数据库设计 7

4.3.1 数据库需求分析 7

4.3.2 概念结构设计 7

4.3.3 逻辑结构设计 8

5 系统实现 9

5.1 用户管理模块实现 9

5.2 好友管理模块实现 11

5.2.1 发送好友申请功能 11

5.2.2 接收好友申请功能 13

5.3 文本聊天模块实现 15

5.4 语音聊天模块实现 17

5.5 视频聊天模块实现 20

6 总结与展望 23

参考文献 23

致谢 24

基于Android手机的移动视频聊天系统

吴语涵

,China

Abstract:With the development of technology and the advent of the Internet era, more and more people use high-tech products, leading to a substantial demand for software upgrade. From one side, communication between people has constantly undergoing change. It is so important to use the chat software to communication. So the need of instant messaging is imminent. This paper introduces the technology and analysis the design of this system. It also describes the implementation of Android mobile video chat system, named Yechat. A XMPP Instant Messaging protocol based on open source was designed; it used C/S architecture and TCP protocol to connect to the server. It uses java as the development language which is based on android studio development platform. And it uses the SDK and the cloud database. The system is mainly to achieve user registration, user login, adding your friends and chatting with each other. It contains the text chat, the voice chat and the video chat. So it achieves the purpose of instant messaging. Through various tests, the software can run more reliable at last. It has some practical value.

Key words:Android;Instant Messaging;Voice Call;Video Chat

绪论

研究背景及现状

随着全球科技水平的不断提高,网络上软件的发展越来越好,人们通过互联网的一些应用进行沟通越来越普遍,现如今,有很多软件类似于ICQ、MSN等可以服务于世界各地的朋友以及亲人相互联系,仿佛世界尽在手中,只要登录这些软件就可以看到你想聊天的人是否在线。这些软件都应用了一种业务,就是即时通信(IM,即 Instant Messaging)。即时通信就是通过互联网的方式能够即时发送和接受消息,且不同于传统的电子邮件即时通信非常的快速。它可以让用户和用户想要联系的对象通过各种各样的方式进行交流例如文字、语音和视频等。不仅如此,还可以传递很多文件图片等。

1996年第一款即时通信软件ICQ 被开发,在半年时间内,它的注册用户达到了85。随后便掀起了即时通信的发展潮流。雅虎马上开发了自己的Pager,微软也开发了Windows messenger。中国的即时通信市场是1999年由腾讯公司打开的,众所周知,腾讯的QQ在中国有一定的影响,让人们之间相互联系更加方便。由此可见,腾讯在中国的即时通信市场中占有十分重要的地位。五年之后,人们渐渐的都开始使用即时通信,这使得它的用户数高达7000万人,一年之后增长到9300万人,2006年更是增长了29%,也就是1.2 亿人。后来MSN进入到了中国市场后,中国市场中的一些门户网站也开始加入即时通信的行列。但是QQ具有的用户数还是最高的占了中国的78.8%,腾讯公司并没有止步不前,反而具有前瞻性的开发了微信。当微信进入到即时通信的市场后,使得腾讯在中国的即时通信市场中占了主导位置。由此可见,不管是国内还是国外,即时通信都在一定程度上受到了人们的认可并得到了广泛的使用。

由此可见,即时通信在对人与人之间交流过程中起到了有很大的作用,它和传统的电子邮件不同,它允许用户之间通过网络自然交互,使人与人之间的沟通更加方便和快速。因此即时通信已经可以应用到各种公司以及其他的组织等,不仅如此它在各个领域都有十分开阔的应用前景。

开发目的及意义

21世纪是一个信息时代,是一个互联网时代,随着人们需求的增加,信息的传递自然也不像以前一样特别缓慢,越来越多的各种各样的聊天软件使信息传递有了更高效、更快捷的途径。它完美的实现了即时性,使人与人可以在第一时间沟通与交流。渐渐的,它不仅可以实现文本的聊天功能,还实现了语音以及视频通话的功能,人们通过语音以及视频通话,仿佛感觉对方就在其身边,这样人性化的设计让这些聊天工具更加人性化,也从而得到了人们的认同。互联网的出现十分神奇,它仿佛连通了整个世界,让全世界的人互相交流,然而,即时通信的聊天软件的出现,更仿佛打开了新世界的大门,每一位软件的用户都可以在世界各地通过此类软件进行面对面的沟通,现如今,这些软件也不仅仅局限于聊天功能,多元化的功能更给人们带来了无限的方便,也让互联网更加贴近我们的生活,更加生动和丰富,更让人们之间的交流充满生机与活力。

核心技术介绍

Android平台简介

2008年,谷歌公司发布了第一个安卓版本1.0,引起了轰动,之后几年中,谷歌又十分迅速的不断的开发新的安卓系统。到了2011年的时候,谷歌发布了安卓3.0系统,这个系统是专门为平板电脑准备的,但是这个版本也是唯一的一个较为失败的版本。在同年的10月,谷歌没有气馁,发布了安卓4.0的系统,这个版本改进了3.0的坏处,没有区分手机以及平板电脑。

安卓系统大致的系统架构可以分为四层架构,其中包括Linux内核层、系统运行库层、应用框架层和应用层。而且安卓系统给用户提供了很多的东西,例如它的四大组件还有丰富的系统控件、内部的SQLite数据库、还有地理位置定位功能,内置GPS,以及强大的多媒体和传感器。

目前,Android已经成为了全球第一大智能手机操作系统,并且每天都还会有数百万台新的Android设备被激活,并且已经占据了全球智能手机操作系统70%以上的份额[2]

系统C/S结构简介

C/S 结构,就是客户端和服务器的结构。C/S结构是一种软件系统体系结构,它可以通过客户端和服务端两个部分来完成任务,降低了开发的成本,十分经济。目前为止,大多数的应用软件系统都是采用了这样的客户端服务端形式的两层结构。

C/S 结构的基本原则很简单明了,就是将计算机分配下来的任务分成很多个子任务,然后交给不同的计算机分别完成,就是“功能分布”的原则。服务端用于完成数据库的管理就是DBMS,而客户端完成对这些数据的处理和把这些数据以可见的形式表现出来并完成用户的接口。简单来说就是用户在客户端请求服务之后,通过服务端提供服务的过程。

通常来说,客户端和服务端不在同一台计算机上,而客户端的任务则是把用户提出来的需求交给服务端,服务端进行处理这些数据,然后把返回的结果用特定的形式返回客户端,客户端用一种更容易理解的形式将服务端的数据返回给用户,如此一来,用户很方便的看到自己的需求。

JAVA语言简介

Java编程语言和我们熟悉的C语言和C 语言很相似。但是它是一个完全面向对象的程序设计语言,完美的继承了C 语言的面向对象的技术。相对于C语言来说,Java去掉了指针、运算符重载和多重继承C语言的一些缺点,对开发者来说更加简单明了。而且Java语言增加了一个可以回收不再被引用的对象占的大量内存空间的功能,被称之为垃圾回收器功能。这个功能让开发者可以不再担心内存管理的问题。

Java语言有很多特点,首先,它的语法相对于C语言等来说十分简单, 但是功能却没有落后反而非常强大。并且,Java很强调网络特性,内置的一些协议类似于TCP/IP、HTTP、FTP协议等,所以利用Java语言开发网上的一些应用系统会更加方便。其次,有一句著名的口号“一次编写,到处运行。”这也反映了Java语言的跨平台性,使大量的开发者非常方便的进行跨平台开发。Java程序可以通过解释器得到字节码,他们经过了很精心的设计和优化,所以运行的速度较快,比以往的一些语言效率更高。最后,Java语言与传统的高级语言不同的就是它内置了多线程的功能,只要继承Thread这个类,就可以编写多线程的程序,这样通过使用这些多线程,可以很简单的使用网络上的实时交互行为[6]

Java语言还包含了丰富的API文档和类库,而且它在执行代码是在运行的时候动态载入的,大量的减少了维护等工作,这使得Java更加受开发者的欢迎,从而更受开发者的欢迎,具有较高的层次。

XMPP协议简介

XMPP可以再XML环境中灵活发展,是一种基于标准通用标记语言的子集XML的协议。所以网络上的应用如果应用了XMPP协议就会具有很强大的扩展性。经过扩展后的XMPP在处理客户的需求的时候可以通过发送扩展的信息,也可以通过在其顶端建立一些应用程序[8]。而且,XMPP中还有一些软件协议是专门针对服务器端的,让用户和用户之间可以进行通话,也让开发者使用系统或者给系统添加其他功能更加方便。

剩余内容已隐藏,请支付后下载全文,论文总字数:22240字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;