基于Android的校园聊天软件的设计与实现.docx
- 文档编号:5811625
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:48
- 大小:4.38MB
基于Android的校园聊天软件的设计与实现.docx
《基于Android的校园聊天软件的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于Android的校园聊天软件的设计与实现.docx(48页珍藏版)》请在冰豆网上搜索。
基于Android的校园聊天软件的设计与实现
基于Android的校园聊天软件的设计与实现
此文档为WORD格式,下载后可随意编辑
2017年9月修订
2015届本科生毕业设计(论文)开题报告
课题题目
基于Android的仿微信校园网聊天工具软件
学生姓名
学号
专业班级
计科2班
题目来源
□科学技术□生产实践
□社会经济■自拟□经典□其它
题目性质
□理论研究□应用研究
□工程设计■软件设计□其他
成果形式
■论文□设计说明书
□实物■软件□作品
同组同学
无
一、选题的依据及意义
随着移动通信的发展以及互联网向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,WindowsMobile,Palmos等手机平台,过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开放性很强的平台。
而Android是一套真正意义上的开放性的移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。
Android是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。
Android平台的开放性等特点既能促进技术(包括平台自身)的创新,又有助于降低开发成本,还可以使运营商能非常方便地制定自己的特色化的产品。
因此,它具有很大的市场发展潜力。
基于Android的聊天系统(InstantMessenger,简称IM)是指能够即时发送和接收互联网消息等的业务。
而聊天系统是基于互联网协议的应用程序,它能够使应用不同设备的用户进行通信,随着手机的不断普及以及性能的不断提升,为聊天系统从传统的PC机到手机的移植提高了很好的条件。
而且在中国庞大的手机用户中,通过手机使用聊天系统软件的用户越来越多。
当前的手机操作系统都过于封闭,各大聊天系统软件采用的通讯协议也不统一,而Android是基于Linux的开源的手机操作系统平台,XMPP是基于XML的开源的即时通讯协议,因此基于Android平台和XMPP协议开发聊天系统具有很好的应用前景。
出于上述,基于XMPP协议的Android多人聊天室是一个界面简洁,功能全面,适合校园学生的一款非常不错的实时通信软件,聊天室使得人们获取好友的最新消息,与朋友聊天,传输文件等操作更好的实现。
同时可以获取到自身的定位信息,使得我们的生活更加便利。
二、国内外研究现状及发展趋势
Android作为Google开发的一款开源手机操作系统,正越来越受到手机厂商的追捧,而摩托罗拉在手机操作系统上全力转向Android平台,也让基于Android平台的应用开发越发成为业内关注的焦点。
不过,由于Android平台的产业链尚不完善,参与Android平台的开发的力量像是“军阀混战”。
把现在的Android平台开发比喻成“军阀混战”,一点不为过,因为Android平台最开始的不完善,所以造成了军阀混战,很多力量投入进来,Android的应用价值链我们还看不太清楚,但是可以感觉到这里面波涛汹涌,很多诸侯在里面竞争。
对Android平台的完善,我们可能原来很看中运营商的力量,虽然运营商力量依然非常强大,但是别的力量增长的速度应该是更快的。
开发多半基于想象,缺乏用户需求认可:
改善用户体验一直是移动互联网应用开发致力推进的。
在Android平台开发过程中,缺乏用户反馈的需求是开发者一直头疼的问题。
开发者按照自己的想法做出他们认为有用,或者认为对他们类似有用的东西,但是真正从市场上过来的用户的需求反馈还是很少的。
让开发者融入客户环境里面才能开发出真正好的产品。
如果开发者和用户之间信息的流动够顺畅,下一步的产品就是用户跟开发者之间一个信息流的平台,在这个平台里就某一款应用得到用户全部的回馈信息和市场的反馈,会让应用和分享更加简单。
而现如今QQ、MSN等聊天工具已经成为我们生活中的一部分,无论是工作还是生活,我们已经离不开IM工具。
由于近几年手机的普及尤其是Android手机的走热,Android手机上的IM聊天软件对于Android用户来说是一款非常实用的软件。
当前的IM软件已经不只是简单的聊天工具,还有很多附加功能,例如定位服务,发送文件功能等,更是人们喜欢IM的主要原因之一。
三、本课题研究内容
系统的客户端定位于Android手机平台。
系统的用户信息和聊天信息在客户端存储在Android平台自身所带的SQLite数据库中,多媒体文件和图片文件存储在Android平台虚拟文件存储设备sdeard中。
通过对聊天软件的调研,进行需求分析、总体设计、UI设计、数据库设计,采用Java技术在Android平台上实现聊天软件的各个功能模块,设计测试用例,调试并完善系统功能。
四、本课题研究方法
(1)利用工具书、参考书和网络资源查阅相关信息,学习Android软件开发技术;
(2)针对校园社区交流进行调研和需求分析;
(3)采用软件工程的思想和方法进行系统分析和设计,采用专业界面设计工具进行界面设计;
(4)进行系统代码的编写;
(5)运行、调试并测试系统。
五、研究目标、主要特色(创新)及工作进度
(1)2015.12.5-2015.1.6确定题目并撰写开题报告;阅读、搜集、查找相关资料;
(2)2015.1.07-2015.2.01系统分析与系统详细设计;
(4)2015.2.02-2015.2.19用户界面的设计及制作;
(5)2015.2.20-2015.3.20开发程序,完成系统的前台设计与后台代码连接;
(6)2015.3.21-2015.4.20运行调试,系统测试和功能进行分析处理,完善设计;
(7)2015.4.21-2015.5.26结论、撰写论文、论文初稿检查修改及装订。
六、参考文献
[1]李芙蓉.当前智能手机操作系统及其比较分析[[J].信息技术,2008(5)
[2]张哗.Android系统介绍[[EB/OL].
[3]顾卫华.PalmOS编程实用大全[M].北京:
中国水利水电出版社,2001
[4]何伟,杨宗德,张兵等.基于SymbianOS的手机开发与应用[M].北京:
人民邮电出版社,2006
[5]中关村在线.Windowsmobile系列操作系统[EB/OL].
[6]王成,刘金刚.基于Linux的嵌入式操作系统的研究现状及发展展望[J].微型机与应用,2004(5)
[7]庞怡,许洪光,姜媛.即时通讯工具现状及发展趋势分析[[J].科技情报开发与经济,2006(10)
[8]Ihei&Quka.IM的四种即时通讯协议[EB/OL].
[9]赵炯.Linux内核完全注释「M].北京:
机械工业出版社,2004
[10]BenjaminSpeckmann.TheAndroidmobileplatform[EB/OL].
指导教师意见(课题难度是否适中、工作量是否饱满、进度安排是否合理、工作条件是否具备等)
指导教师签名:
教研室及二级学院意见(选题是否适宜、各项内容是否达到毕业设计(论文)大纲要求、整改意见等)
教研室主任签字:
二级学院院长签字(章):
摘要
在智能手机中,Android平台约占75%市场份额。
安卓系统的广泛应用,使得Android手机应用程序的数量快速增长,即时通讯APP的应用范围也更加广泛。
另一方面,高校师生需要在教学过程中加强沟通,而开发一款智能手机的校园聊天APP则可以满足这一需要,弥补传统教学形式的不足。
本文旨在设计并实现一个基于Android的校园聊天软件。
本文在对校园聊天客户端进行调查研究基础上,进行了需求分析和系统设计,进一步完成了UI界面设计,在Eclipse中使用Java语言实现了APP各个功能模块。
APP的IM通信部分基于第三方通信云SDK进行开发。
该APP的功能主要包括用户登录、注册、聊天框架、通讯录管理、个人信息管理等功能模块。
基于Android平台校园聊天软件将为学校管理者、教师、学生之间提供一个高效的沟通平台,它的实施将有利于加强学校对教育教学过程的监督,增进师生之间、学生之间的学习交流,增强教学互动性,提高教育教学效率。
关键词:
Android;校园聊天;智能手机
ABSTRACT
Forsmartphones,theAndroidplatformaccountsforabout75%marketshare.TheextensiveapplicationoftheAndroidsystemallowsthenumberofAPPsforAndroidcellphonestogrowrapidly.TheapplicationscopeofinstantmessagingAPPshasbecomewideraswell.Itisnecessaryforcollegeteachersandstudentstoenhancecommunicationintheteachingprocess,developingacampuschattingAPPforsmartphonescanexactlymeetthisneedandcompensatefortheinadequaciesofthetraditionalteachingform.
ThispaperaimstodesignakindofAndroid-basedcampuschattingsoftware.Throughthesurveyonthecampuschattingclient,thedemandanalysisandsystematicdesignarecarried,andtheUIinterfacedesignisfurthercompleted.JavalanguageisusedinEclipsetorealizevariousfunctionalmodulesoftheAPP.TheIMpartoftheAPPisbasedonthethird-partycommunicationcloudSDK.FunctionsoftheAPPmainlyincludeuserlogin,registration,chattingframework,addressbookmanagement,andpersonalinformationmanagement.
BasedonthecampuschattingsoftwareoftheAndroidplatform,itistoprovideanefficientcommunicationplatformforschoolmanagers,teachersandstudents,theimplementationofwhichwillfacilitatethesupervisionontheeducationprocessbyschoolsandincreaseacademiccommunicationamongteachersandstudents.Theteachinginteractivitywillbeenhancedalongwiththeimprovementoftheeducationefficiencyaswell.
KeyWords:
Android;campuschat;Smartphone
1绪论
1.1开发背景
Android的英文翻译是指“机器人”,而Android这个词语作为操作系统的名称出现,是谷歌在2007年发布了应用在手机平台上的操作系统,自此Android作为手机操作系统出现在人们的视野中。
同时由于Android的操作系统的开源性和可开发性使得以Android操作系统的应用软件日益增多。
Android操作系统被越来越多的人接受和使用。
目前的Android聊天软件基本分为2种架构形式:
(1)C/S架构:
采取客户端/服务器对等传输的形式,用户方主要使用客户端软件,使用前用户通过网上下载客户端软件,再安装到手机上进行使用,市场上流行的C/S架构的聊天软件有以下几种:
QQ、微信、微博、YY、MSN等;
(2)B/S架构:
浏览器/服务端对等传输的形式,这种形式下的即时通信工具,一般都是依赖于互联网,作为用户无需下载客户端,用户一般在浏览往网上网页时浏览器会提供一个类似于客户端的界面使用户可以发送消息,此架构一般应用在数据流比较大的电商网站,如WebQQ等。
1.2课题意义
在高校传统教育教学模式下,普遍存在师生之间就教学内容比较缺乏沟通的现象,教师与学生之间的关系日趋淡漠,学生对老师缺少敬畏感,老师对学生缺少亲切感。
然而师生之间的沟通对教学是十分重要的。
另外,学校管理者则希望加强对教育教学过程的监督管理,籍此提高教学质量,强化教学效果。
本文研究的校园聊天软件可以为学校管理者、教师、学生之间提供一个高效的沟通平台,它的实施将有利于加强学校对教育教学过程的监督,增进师生之间、学生之间的学习交流,增强教学互动性,提高教育教学效率。
因此本课题具有重要的实际意义和应用价值。
1.3研究内容
本文将针对基于Android的校园聊天APP进行需求分析、总体设计、UI界面设计、软件代码编写、软件功能优化、软件测试等工作,实现登录功能、向XMPP服务器发送信息包功能、用户好友通讯录获取及相关管理功能、个人信息管理功能、好友文字和语音消息发送功能、图片文件发送功能。
论文的章节安排如下:
第1章:
绪论。
主要陈述项目的背景和来源,以及所开发产品的意义和未来
发展前景,介绍了国内外同类产品的发展现状,最后说明论文主要工作,本人在
项目中完成的功能模块以及论文的主要结构。
第2章:
系统相关技术介绍以及理论分析。
主要介绍项目开发所使用的技术
以及软件的需求分析,包括:
Android手机操作系统的架构和应用程序的分析、软件的用户需求分析。
第3章:
软件设计。
对软件的功能进行概要分析,同时对系统所处的子系统的各个功能进行详细的介绍。
第4章:
软件实现。
主要对系统的架构、各个模块的功能划分以及功能类图和软件实现截图进行详细介绍。
第5章:
系统测试:
主要陈述系统的测试用例以及系统的完成情况。
第6章:
总结与展望。
主要介绍了项目完成经验,存在的缺陷以及不足,以及对未来的展望。
1.4本章小结
本章主要阐述了软件的开发背景、课题意义和研究能容,通过对上述三部分的详细分析为需求分析章节做好准备。
2软件需求分析
2.1技术介绍
2.1.1软件开发的工具和环境
开发环境:
Eclipse
开发语言:
Java
模拟机平台:
AVD
手机运行平台:
Android2.1以及上版本
开发软件所需插件:
JDK、SDK
UI界面处理软件:
Photoshopcs5
音频处理软件:
绘声绘影X15,格式工厂
辅助设计工具:
ADT、LogCat、adb等
2.1.2Eclipse介绍
该软件主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分—EclipsePlatform、JDT、CDT和PDE。
JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发、EclipsePlatform则是一个开放的可扩展IDE,提供了一个通用的开发平台。
2.1.3安装JDK和SDK
先从网站上找到JDK1.6(JREaloneisnotsufficient)版本并下载,下载完毕后将它安装在PC机上并在PC机上设置好有关的环境变量,将JAVA_HOME,path等几个设置为适用于Java开发的环境变量,最后将其导入你的JDK文件路径。
SDK安装:
直接从相关网站下载好SDK压缩包,然后打开Eclipse软件,在其中找到对应路径将其导入就可以。
2.2需求分析
2.2.1主要参与者
根据软件设计的需要,系统主要参与者为用户和系统。
用户将对系统发起大部分功能,同时系统的一些设置信息和更新信息需要系统参与。
(1)用户:
用户在操作软件的过程中涉及到的软件功能主要包括:
用户注册功能、用户登录功能、重设用户密码功能、好友列表管理功能、聊天功能等,其中聊天功能包括聊天文字、聊天表情、语音聊天、以及图片文件发送等。
(2)系统:
系统通过调用相关功能模块将自动登录用户账号、保存用户注册时的设置信息;系统提供后台的软件更新功能。
2.2.2功能需求
校园聊天软件的功能需求包括:
用户注册、用户登录、聊天功能、通讯录管理、个人信息管理。
(1)用户注册
用户初次进入软件,需要申请一个用户名。
这就需要用户通过注册功能注册一个可以使用的账号。
(2)用户登录
为了让软件使用起来更加简便,给用户带来良好的交互体验,系统一方面允许用户采用输入账号和密码的方式进行登录,另一方面也允许记录帐号信息而自动登录。
(3)聊天功能
聊天功能是指好友之间的发送即时消息进行通讯,消息形式可以是文字、语音、表情符号、图片等等。
(4)通讯录管理
通讯录管理功能包括对好友的添加、删除、查找,显示好友列表,置顶显示即时会话等。
(5)个人信息管理
个人管理信息主要是对用户的头像、个性签名、昵称等进行管理。
图2-1系统功能模型图
2.3.3性能需求
根据以上分析,性能需求主要针对用户使用软件的的方便性和系统可靠性等方面进行考虑。
在项目设计中,主要遵循一下原则:
(1)可操作性:
用户对于软件操作时,界面要简单、方便、直观。
操作过程中要有及时的提示,比如错误提示。
从而保证用户能正确操作软件。
(2)可移植性:
设计出来的软件系统要保证在不同版本的Android手机上运行不会崩溃,同时保证数据的正确性。
(3)实用性:
从用户的实际需求去考虑软件的功能需求。
(4)安全性:
系统要保持数据的正确性,在长时间的使用过程中保证系统不易崩溃。
同时软件在运行和不运行时都要保护用户的注册信息和软件通过检测用户本地信息时所获得的信息都不被泄露,从而确保用户使用该软件的安全性。
(5)可靠性:
系统要有一套良好的运行环境。
确保系统稳定、长时间的运行不出错,从而使用户可以放心使用软件。
(6)可维护性:
系统软件在开发过程中不但要保证用户需求的功能实现,还要考虑未来为应对用户需求而更新后续版本的功能需求,以及功能的扩张性,从而维护好软件的可持续性。
2.3本章小结
本章主要阐述了项目方案和需求分析,其中项目方案包括开发的工具和搭建的环境介绍;需求分析包括主要参与者、功能需求和性能需求。
主要参与者又包括系统和用户;功能需求包括用户注册、用户登录、通讯录管理、聊天管理、个人信息管理。
3软件设计
3.1软件功能设计
根据软件需求分析,该软件功能主要分为以下几个模块:
用户注册模块、用户登录模块、好友管理模块、用户信息管理模块、聊天管理模块。
以下是系统功能模块图,如图3-1:
图3-1系统功能模块图
3.1.1客户端功能设计
根据上述本软件需求分析,用户注册模块设计如下:
(1)用户运行软件后需要通过注册界面注册账号从而使用该软件,之后软件系统验证正确后将与服务器进行通信,将注册信息发送给服务器,服务器将发回允许指令。
(2)注册的用户名不允许重复,否则服务器将会报错。
(3)密码设置时,系统要求输入两次密码,之后服务器将验证系统发过来的密
码包信息。
图3-2登录流程图
根据上述本软件需求分析,用户打开软件后,用户将进入登录页面,此时只要输入已注册的用户名、用户密码就可以登录成功。
用户登录模块设计如下:
(1)用户名错误:
系统提示该用户名已存在或不存在即未注册。
此外用户名必须多于六位数。
否则系统也会提示错误。
(2)密码验证错误:
登录界面中,当用户登录时填写的登录密码被系统提示错误的时,用户需要重新填写登录密码。
(3)其它错误:
当用户进行一些不当操作也会引起错误。
从而导致登录失败。
(4)自动登录功能:
每个使用该软件的用户在第一次成功登录后,再次登录该软件时,系统都会自动选择自动登录。
因为系统会把用户之前的登录信息缓存到本地手机中,下次登录时软件系统将自动检测缓存的信息,从而自动登录。
图3-3用户登录流程图
用户通过转入个人设置界面进行信息设置,用户管理设置模块设计:
(1)用户头像管理:
用户可以设置自己的头像,上传方式可以通过本地相册和拍照两种方式上传头像,上传成功后系统将保存信息。
(2)用户昵称管理:
用户可以设置自己喜欢的昵称,用设英文16个字符,用户设置完成昵称后,点击确认按钮,上传信息。
(3)用户心情短语设置:
用户可以设置自己喜欢的心情短语,设置完成后,系统将保存信息。
(4)用户密码重置管理:
当用户为了自己信息安全考虑时,可以进行密码的重置。
密码重置的时候,为了账号安全用户必须验证原来的密码。
(5)设置管理其他信息:
用户可以对聊天中的消息提醒进行设置,可以调节音量大小,也可以设置为震动。
同时该软件的系统音量也可以如此设置
根据需求分析,好友管理模块设计如下:
(1)用户可以进行添加好友、删除好友、查找已经添加的好友的操作。
(2)用户也可以通过搜索功能键在相应的位置输入想要添加的用户名,从而添加好友。
如果陌生人想添加你为好友,只要他进行之前的操作后你也会收到验证消息,这时你可以选择是否添加他为你的好友。
根据软件需求分析,聊天功能管理模块设计如下:
(1)文字聊天:
用户在聊天过程中发送的纯文本消息将会被系统软件传输到服务器端,服务器端将检查发送过来的信息包格式之类的正确性,通过验证后给软件发送反馈。
软件收到回馈后,将给用户提示。
(2)语音消息:
好友之间可以发送语音消息。
用户点击聊天界面下方的发送语音按钮不放后,软件将开始录音。
(3)图片文件:
好友之间可以发送图片文件。
用户可以选择手机本地图片和拍照两种方式。
消息发送流程图3-4如下:
图3-4消息发送流程图
3.1.2服务器功能设计
目前市场中小范围局部的聊天软件主要为:
基于环信、融云等第三方IM服务器的通讯聊天软件或者是基于XMPP协议利用OpenFire数据库的通讯聊天软件。
此次本项目软件主要使用基于XMPP协议的OpenFire服务器,XMPP协议作为一个被广泛使用的消息协议,有大量的网络资料和成熟开源模块,例如在Android和IOS上,就很方便集成XMPP协议。
IM作为一个复杂的系统,有方方面面需要考虑,使用成熟的协议,能帮助我们避免很多问题,提高开发效率。
Openfire采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。
Openfire安装和使用都非常简单,并利用Web进行管理。
单台服务器可支持上万并发用户。
开发者可以使用它轻易的构建高效率的即时通信服务器。
由于是采用开放的XMPP协议,您可以使用各种支持XMPP协议的IM客户端软件登陆服务OpenFire作为服务器。
允许多个客户端同时
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 校园 聊天 软件 设计 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)