Android平台下校园信息管理系统客户端的设计与实现毕业论文Word文档下载推荐.docx
《Android平台下校园信息管理系统客户端的设计与实现毕业论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Android平台下校园信息管理系统客户端的设计与实现毕业论文Word文档下载推荐.docx(37页珍藏版)》请在冰豆网上搜索。
![Android平台下校园信息管理系统客户端的设计与实现毕业论文Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-12/15/5f7f3df8-22bd-46a8-932f-c8b71bc8b710/5f7f3df8-22bd-46a8-932f-c8b71bc8b7101.gif)
KeyWords:
Android;
Mobiles
前 言
现在手机已经成为了人们生活中不可或缺的移动设备,没有手机会让人觉得寸步难行。
手机不仅仅拥有传统的打电话、发短信等基本的功能,而基于智能手机强大的信息处理能力和可扩展能力,以及3G网络高速数据传输,越来越多的功能和业务将被开发出来并大规模的应用。
目前,得益于谷歌公司的开源策略,拥有众多优点的Android系统发展迅速,各大产商推出大量搭载Android系统的手机,Android手机已经占据了手机市场的绝大份额。
在未来几年必将大放异彩,将极大的推动整个手机操作系统甚至是互联网乃至软件行业的发展。
与此同时,开源的Android系统让程序员独立开发应用软件成为可能。
通过学习与研究,可以将PC电脑上的大量应用移植到Android系统上。
而学校的信息管理系统——Mysise系统,目前缺少对手机客户端的支持,基于此,开发一个Mysise系统Android手机客户端这样的想法便油然而生。
综上所述,Android系统是移动平台发展的大势所趋,未来将在移动领域扮演一个时代重要的角色。
所以,对Android平台进行相关研究并熟悉它是很有必要的,通过了解手机软件行业,进而把握未来移动互联网的发展趋势。
同时可以更好的提升目前掌握的软件开发专业技能,开发出符合社会发展需求的应用软件,从而让生活更加便捷。
1绪论
1.1项目背景
当今社会的生活节奏越来越快,人们对手机提出的要求也越来越高,由于手机市场发展迅速,手机操作系统也出现了不同种类,现在市场上主要有四种手机操作系统,分别是Windowsmobile,Symbian,Iphoneos以及谷歌的Android操作系统。
其中,拥有开放源代码优势的Android系统有着最大的发展前景。
那么能否在手机上拥有自己编写的校园信息管理系统呢?
答案是肯定的,谷歌Android系统就能做到。
本文涉及的Mysise系统就是一个基于谷歌Android手机平台的校园信息管理系统。
1.2Mysise系统简介
Mysise系统,是为XX大学定制的校园信息管理系统,主要包含有教师使用的管理系统与学生使用的信息系统,本项目主要研究的是学生使用的信息管理系统部分。
学生信息管理系统,每个学生都使用唯一的学号作为登录帐号,登录系统后可以查看自己的各种信息或者做需要的操作,主要功能模块有:
个人信息、课程表、考试时间表、考勤信息……等等。
可以说,通过网络,学生就可以方便的在客户端上看到自己想要的校园信息。
然而,目前Mysise系统仅提供PC端Windows操作系统的客户端支持。
1.3系统的开发意义
目前Mysise系统缺少在移动设备上的支持,显然已经不能满足当代大学生高效学习便捷生活的需求了。
移动设备硬件的发展,使得手机也可以完成更多的功能需求,Android系统的出现,更是让手机进入大屏触屏时代,在很多日常应用上,功能已经相当接近甚至替代PC机。
而开源的Android系统为开发者移植PC应用程序提供了技术上的支持,因此,在PC上的Mysise系统有理由也有可能被移植到Android系统的移动设备上来。
本课题是研究如何开发一款Android平台上的Mysise系统客户端,它将拥有同PC端基本一致的基础功能,同步的信息数据,界面简洁美观,操作简单方便。
能为XX学生使用该系统带来更多的方便与快捷,也使得学校的教学设备的提供更为全面。
1.4本文的结构
本人在本课题中承担后台逻辑处理模块的工作。
论文主要结构及内容如下:
第一章绪论,介绍项目背景,阐述项目开发的意义。
第二章相关知识介绍,介绍项目开发的相关技术与知识。
第三章系统需求分析,分析系统开发的各方面需求,为设计做准备。
第四章系统功能设计,介绍系统主要功能模块的设计。
第五章系统功能实现,介绍系统的后台逻辑处理模块的具体实现。
第六章系统测试,通过测试验收产品。
2课题相关知识介绍
2.1Android平台介绍
2.1.1Android系统简介
Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称。
它包括操作系统、中间件、用户界面和应用程序——移动电话工作所需要的全部软件,而且不存在任何以往阻碍移动产业创新的专业权障碍。
目前,最新版本为Android2.3Gingerbread(姜饼)和Android4.0IceCreamSandwich(冰激凌三明治)。
虽然Android是Google公司推出的产品,但更贴切的说法应该是开放手机联盟的产品。
开放手机联盟是由大约30家公司组成的联盟,致力于将“更好的”和“开放的”手机推向市场。
其网站上的一句话很好的阐述了这一点:
“Android是本着成为第一个开放、完整、免费。
专门针对移动设备开发的平台这一目标,完全从零开始创建的。
”
2.1.2Android系统的特点
1、开放性。
Google与开放手机联盟合作开发了Android,Google通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,希望通过建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。
2、应用程序无界限。
Android上的应用程序可以通过标准API访问核心移动设备功能。
通过互联网,应用程序可以声明它们的功能可供其他应用程序使用。
3、应用程序是在平等的条件下创建的。
移动设备上的应用程序可以被替换或扩展,即使是拨号程序或主屏幕这样的核心组件。
4、应用程序可以轻松地嵌入网络组件。
应用程序可以轻松地嵌入HTML、JavaScript和样式表,还可以通过WebView显示网络内容。
5、应用程序可以并行运行。
Android是一种完整的多任务环境,应用程序可以在其中并行运行。
在后台运行时,应用程序可以生成通知以引起注意。
2.2JSoup简介
JSoup是一款Java的HTML解析器,可直接解析某个URL地址、HTML文本内容。
它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
由于JSoup良好的可扩展性API设计,开发者可以通过选择器的定义来开发出非常强大的HTML解析功能。
JSoup是基于MIT协议发布的,可放心使用于商业项目。
JSoup的主要功能如下:
1.从一个URL,文件或字符串中解析HTML;
2.使用DOM或CSS选择器来查找、取出数据;
3.可操作HTML元素、属性、文本;
在无法得到学校信息管理系统的数据库数据的情况下,在JAVA编程语言中,使用JSoup来解析http网页从而获取所需要的数据,成为了开发此系统必要的技术。
2.3开发工具的选用
2.3.1Eclipse简介
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentTools,JDT)。
利用它我们可以在项目的编码、整合方面极大的提高工作效率,它是功能丰富的Java集成开发环境,包括了完备的编码、调试、测试和发布功能。
简而言之,通过配置Android必要的开发组件和插件,使用Java编程语言,Eclipse将完整支持Android程序的开发。
2.3.2Photoshop简介
Photoshop是平面图像处理业界霸主Adobe公司推出的跨越PC和MAC两界首屈一指的大型图像处理软件。
它功能强大,操作界面友好,得到了广大第三方开发厂家的支持,从而也赢得了众多的用户的青睐。
Photoshop支持众多的图像格式,对图像的常见操作和变换做到了非常精细的程度,使得任何一款同类软件都无法望其颈背;
它拥有异常丰富的插件(在Photoshop中叫滤镜),熟练后您自然能体会到“只有想不到,没有做不到”的境界。
2.4系统运行环境的搭建
1、安装Eclipse3.7:
Eclipse3.7是一款了绿色软件,下载后直接解压即可,第一次运行时会提示配置工作空间,我选择的路径是D:
\Eclipse_Android_Workspace
2、安装JavaJDK:
JDK(JavaDevelopmentKit)是一切Java应用程序的基。
Windows系统下,直接运行.exe文件安装,安装完成后,将安装路径下的bin文件夹路径配置到系统环境变中。
3、下载AndroidSDK:
需要先下载Android在Windows平台上的的SDK,官方网站上下载最新2.3版本,解压后点击SDKManager.exe即可下载所需要的SDK版本。
然后就要将AndroidSDK路径下的tools文件夹路径配置到系统环境变中。
4、安装Android开发插件ADT:
启动Eclipse,打开Help->
SoftwareUpdates,选择AvailableSoftware标签,单击AddSite…,输入“http:
//dl-DevelopmentTools和AndroidDDMS,全勾选,install安装,成功,提示重启Eclipse。
5、配置AndroidSDK路径:
重启Eclipse后,点击菜单Window->
Preference,打开配置窗口,在左边选中Android,在右边输入AndroidSDK的路径,点击OK即可。
6、创建AVD:
为使Android应用程序可以在模拟器上运行,必须创建AVD。
在Eclipse中选择Window->
AVDManager,点击new,填入Name,选择Target的API,SDCard大小任意(推荐256M),选择分辨率为WVGA800(480*800)。
点击CreateAVD即可完成创建AVD。
至此Android开发环境搭建完成。
3系统需求分析
3.1系统设计的总体规则
本项目的主要设计规则有:
简单性:
在实现系统的功能的同时,尽量让平台操作简单,这是非常重要的。
美观性:
在实现系统的功能的同时,尽量提供给用户较高的视觉享受和操作体验。
针对性:
该系统设计是XX信息管理系统的定向开发设计,所以具有专业突出和很强的针对性。
实用性:
该系统能完成Mysise系统各个子板块的信息查看功能,具有良好的实用性。
3.2可行性分析
开发新系统的要求往往来自对原系统有更高的要求。
由于原Mysise系统仅仅支持PC端的使用,而新系统则是针对移动端的支持,故而有开发的必要。
可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,也是很重要的,经过最初的设计目标和理论知识得出以下五点的可行性分析:
(1)技术上的可行性。
由于选用的开发平台Android是一个开源的平台,这意味着开发者可以获取绝大部分的开源代码,并且Google提供了一套成熟又全面的API,对于系统的开发,基本上不存在较大技术难点。
(2)数据获取的可行性。
由于开发的系统是一个校园信息管理系统,因为必须存在一个学生信息的数据库。
目前的情况将导致我们无法直接得到学校提供的数据库,而我们选用了另外一个方法。
因为该系统与PC端的数据一致,而PC端的使用载体是浏览器,这样我们便可以在Android上使用JSoup技术解析HTTP网页而获取所需要的信息数据。
(3)运行可行性。
该系统需要搭建Android平台开发环境,使用AVD虚拟机,并且能正常连接网络,就可以正常运行。
(4)经济可行性:
该平台设计只是作为本人的毕业设计,又因为本人的设计能力有限,其功能还不能完善,所以没有什么经济效益可谈。
(5)法律可行性:
该平台是作为毕业设计与商业无关,又因为是自主开发设计,因此不会构成侵权,在法律上是可行的。
通过以上的可行性分析,我将在Android平台开发环境下,采用Java语言和Eclipse编程工具,对该系统进行研究开发。
3.3系统运行环境需求
1、开发者(PC端):
系统开发工具:
Eclipse3.7
运行平台:
WindowsXP/Windows7/Linux
运行环境:
Javajdk-1.6、Android_2.3.3_SDK、ADT16.01
模拟器参数:
Android2.3.3AVD(分辨率480*800、推荐内存256MB)
2、使用者(移动设备端):
移动终端系统需求:
Android系统
移动终端硬件需求:
屏幕分辨率480*800、CPU主频>
=640MHz、运行内存RAM>
=256M、可用内存ROM>
=64M
网络需求:
WIFI/GSM/WCDMA/CDMA2000
3.4用户需求分析
本课题研究的校园信息管理系统——Mysise系统,主要面向的使用对象是XX大学XX软件学院在校大学生。
每位XX在校学生都拥有Mysise系统帐号(唯一的学号及密码),系统对于学生的学习及生活非常重要。
大部分学生拥有Android系统智能手机或者平板电脑,且习惯使用移动设备来完成可能的日常应用,当然也渴望Mysise系统Android客户端来为其学习生活提供便捷。
无论在教学区还是生活区,较好的网络覆盖为其使用网络应用提供了保障。
3.5系统的设计目标
本课题的设计目标是在Android平台上实现一个校园信息管理系统。
要求该系统拥有美观的UI界面,供用户登录、查看信息使用,包括:
查看个人信息、查看课程表、查看考试时间、查看考勤信息等功能。
系统拥有快速的操作体验,代码编写使用了多线程技术,使得界面显示与网络连接、数据处理可以同时进行。
系统信息数据来源取自PC端系统的网络,保证了准确与同步。
3.6用例分析与建模
3.6.1用例1登录
参与者:
用户
前置条件:
正确学号已经存在。
目的:
进入系统
综述:
1.用户填写学号及密码
2.系统验证信息,将用户填写的信息传送到系统验证。
3.登录成功,显示主菜单信息。
替代过程:
使用该系统的用户必须先登录,若登录失败,是由于客户输入的帐号或者密码错误,系统允许客户重新输入。
3.1登录模块用例图
3.2用户登录流程图
3.6.2用例2主菜单
登录成功。
让用户选择要执行的功能
本界面设置4个功能按钮,让用户选择要执行的功能,随后执行响应的操作。
代替过程:
如果用户注销登录,则进入用例1。
3.3主菜单功能用例图
3.6.3用例3查看个人信息
于用例2选择了个人信息按钮。
让用户查看个人信息
1.查看基本信息:
用户进入此功能页面能看到个人基本信息。
2.查看必修课信息:
用户进入此功能页面能看到必修课信息。
3.查看选修课信息:
用户进入此功能页面能看到选修课信息。
1.该界面下方设置3个功能按钮,可选择查看需要的信息。
2.如果用户返回,则进入用例2。
3.4个人信息功能用例图
3.6.4用例4查看课程表信息
于用例2选择了课程表按钮。
让用户查看课程表信息
查看当天课程表信息
1.该界面下方设置5个功能按钮,可选择查看星期一到星期五的课程信息。
3.5课程信息功能用例图
3.6.5用例5查看考试时间表
于用例2选择了考试时间按钮。
让用户查看考试时间表
查看目前的考试时间安排
如果用户返回,则进入用例2。
3.6考试时间功能用例图
3.6.6用例6查看考勤信息
于用例2选择了考勤信息按钮。
让用户查看考勤信息
查看当前学年学期的考勤信息
3.7考勤信息功能用例图
4系统的功能模块设计
4.1Mysise系统功能结构图
4.1系统功能结构示意图
4.2系统的功能分析与要求
经过前期的思考和研究,总结出该系统需要完成的一些具体功能,分析如下:
1、能完成网络连接并实现真实帐号登录
2、能完成对板块页面的解析并获取需要的信息数据,通过后台逻辑处理,实现查看信息的显示。
3、使用多线程同步处理前台界面的刷新和后台网络处理。
4、可考虑添加的周边功能,例如XX新闻、XX地图。
4.3系统功能模块的设计
4.3.1个人信息模块
4.2个人信息模块流程图
4.3.2课程信息模块
4.3课程信息模块流程图
4.3.3考试时间模块
4.4考试时间模块流程图
4.3.4考勤信息模块
4.5考勤信息模块流程图
4.4系统用例图
4.6用户前台系统用例图
4.7程序后台系统用例图
5系统具体实现—逻辑处理模块实现
5.1项目结构示意图
5.1项目结构示意图
5.2多线程技术在项目上的应用
在跳转到每一个功能页面的时候,因为单线程的顺序逻辑执行,会出现这样的情况:
只有执行完前一句代码才会执行下一句代码。
而我们的程序表现出来给用户的页面信息又是必须先从网络获取数据后再表现出来,这样的网络工作相对来说是比较耗时的,同时也就会使程序跳转后出现黑屏的情况,只有等待网络工作处理完后才出现UI界面。
有为了让程序避免处理网络工作这样耗时比较长的操作而导致页面刷新缓慢的尴尬现象,我们使用了多线程来分开处理UI刷新跟网络操作。
具体代码如下:
//创建子线程来处理网络工作
Threadt=newThread(){
publicvoidrun(){
//网络工作
netWork();
//启动UI线程
handler.