androidsocket开发的聊天交友软件的设计与实现

目 录
1 绪论 1
1.1 课题目的与开发背景 1
1.2 课题研究现状 1
1.3 课题设计内容 2
2 开发技术简介 2
2.1 Java简介 2
2.2 Android简介 3
2.3 MySql简介 3
2.4 环信简介 3
3 需求分析 4
3.1 系统的可行性分析 4
3.2 系统的功能需求 4
3.3 系统性能需求 5
3.4 系统将来可能提出的要求 5
4 系统设计 6
4.1 系统概述 6
4.2 模块结构图 8
4.3 数据库设计 9
4.4 活动图设计 12
5 详细设计 19
5.1 类的详细设计 19
5.2 界面设计 24
5.3 流程图设计 29
6 测试 34
6.1 测试方法 34
6.2 单元测试 34
结 论 35
致 谢 36
参 考 文 献 37
1 绪论
1.1 课题目的与开发背景
最早的即时通讯软件是ICQ,是四名以色列青年在1996年成立的公司发布的一个即时通讯软件,虽然在早期的ICQ非常的不稳定,但是这种新颖的聊天方式还是吸引了非常多的用户来使用它,在ICQ发布了六个月的时间内注册的用户就打到了85万。不就,国内外各大公司都相继推出了各自的即时通讯软件。
自从1999年腾讯推出QICQ即时通讯软件开始,即时 *好棒文|www.hbsrm.com +Q: %3^5`1^9`1^6^0`7^2# 
通讯服务在中国发展到现在已经有十多年的时间,目前国内即时通讯领域最大的服务商就是腾讯公司推出的即时通讯软件QQ,在2014年据全球性社交营销代理机构WeAreSocial对世界大型网络社交平台进行调查,QQ以8.29亿活跃账户位列世界第二。同时,在2011年腾讯推出的另一款即时通讯软件微信以4.38亿月活跃用户位列世界第五。目测,腾讯就是国内最大的即时通讯服务商。
MSN是微软公司在1999年7月发布的一个即时通讯软件,在2005年进军中国市场后也迅速成为当时市场的主流的即时通讯软件之一。MSN采用邮箱地址作为用户的用户名,这能够使得用户在发送消息时如果对方不在线的话,能够将消息发送到对方的邮箱中。
目前整个即时通讯行业任然处于高速发展的阶段,各种即时通讯软件不断的被开发出来,而且为了防止密码等问题导致账号被盗取,很多企业都有自己内部的即时通讯工具。在即时通讯领域未来的发展趋势呈现是即时通讯软件整合了越来越多的业务,扩展更多的用户,更加人性化的界面,和更加智能的操作。随着即时通讯的发展,跨平台的趋势也变得越来越明显,例如QQ和微信,用户只需要注册一个QQ就同时能够登录到微信的平台进行通信。
1.2 课题研究现状
XMPP(Extensible Messaging and PresenceProtocol,可扩展消息处理现场协议)是一种基于XML的协议,它继承了在XML环境中灵活的发展性。XMPP协议是为了解决即时通讯的标准,它具有很强的可扩展性,并且是一个公开的协议。
XMPP协议有很多的优点,例如XMPP的信息都是以XML为基础的,非常灵活并且可扩展性高,XMPP协议是公开的,程序则开放源代码。XMPP定义了客户端和服务器端的交互要经由XML流。XMPP能够建立并行的TCP套接字连接上所有连接上的客户端和服务器端。
1.3 课题设计内容
本课题的目的是推进以校园日常的聊天交友为背景,以Android系统为开发平台,设计一款能够让用户之间随时随地都能够进行交流、查看动态等功能,用户能够使用文字、图片的方式进行交流,也能够在软件中记录下自己生活的点点滴滴,使日常的交流变得更加简洁,更加方便。
本课题主要使用到的技术如下:
a) 服务器编程
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是目前使用最为广泛的编程语言之一。本课题的服务器端采用Java编写,使用 WebService技术构建服务器。WebService是一种跨编程语言和跨操作系统平台的远程调用技术。这意味着服务器与客户端可以使用任何语言编写,可以运行在任何操作系统上,客户端和服务器都可以进行数据交互。
b) 客户端编程
Android客户端编程需要掌握Java语言的基础,并能够使用Android的控件和类库实现客户端界面。Android客户端编程需要了解Android中Activity的生命周期、了解Android界面开发技术(常用的布局方式)、数据存储(Android自带的SQLite数据库)和网络编程技术(HTTP通讯方式)。
2 开发技术简介
本次开发使用的是Android平台,使用Java开发语言和MySql数据库。主要使用的IDE是Eclipse和MyEcli *好棒文|www.hbsrm.com +Q: %3^5`1^9`1^6^0`7^2# 
pse。使用Tomcat加上WebService构建服务器,以下是对本系统中需要使用到的技术进行介绍。
2.1 Java简介
Java是一门面向对象的程序语言,因为其面向对象的缘故,能够大大的加强程序开发的效率,减少程序开发周期,方便程序员的使用,并且Java拥有其独特的跨平台,多线程并且安全的特性,被广泛的使用在PC、互联网等方面的开发。拥有着全球最大开发着社群,拥有丰富的开发库和框架,由于Java语言拥有着很强的移植性,使用Java开发能够快捷的开发出实用的应用程序。Java自身独特的垃圾回收机制能够大大的减少程序运行所产生的内存消耗。
2.2 Android简介
Android是一种基于Linux的自由及开发源代码的操作系统,主要应用在移动设备,由Google公司和开放手机联盟领导并开发。第一部Android智能手机发布于2008年10月。自从Android手机系统发布以来,经过了短短2年,就在2011年第一季度,Android在全球手机市场份额中超过了塞班,成为了全球第一。目前,Android系统不仅应用在手机上,在平板电脑上Android系统也有着出色的发挥。
Android系统之所以能够这么成功,最主要原因就出在其平台的开放性,开发Android的平台允许任何移动终端厂商和个人开发者加入。其次,开发Android十分便捷,Android平台提供给第三方开发者一个十分宽阔并且自由的环境,并且Android系统是Google发布的,Google具有很多优秀的服务,Android平台能够无缝结合这些服务。最后,Android平台具有安全性的优势,Android系统是基于Linux的,安全性相对于其他系统更加的可靠。
要求系统具备可修改性,有效性,可靠性,可理解性,可维护性的等满足用户需求的软件产品,以便后期提高产品的质量和开发效率,减小系统维护的困难。当系统出现问题时,能够有日志对错误进行输出。
b) android系统功能描述
1)登录注册模块,当用户打开本系统后进入登录页面,在登录页面中用户能够输入已有的用户名和密码登录到本系统,如果输入不正确就会提示用户进行重新输入。用户点击登录界面中的注册按钮会跳转到用户注册界面,用户在注册时需要输入的信息有用户名和密码。密码需要输入两次,如果两次输入不一致将不能注册成功,用户名不能够包含中文,可以是英文加上数字的组合。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2971.html

好棒文