1、基于Android系统的课程管理系统毕业论文基于Android系统的课程管理系统毕业设计(论文)原创性声明和使用授权说明原创性声明本人重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作与取得的成果。尽我所知,除文中特别加以标注和致的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得与其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了意。作 者 签 名:日 期:指导教师签名: 日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文
2、)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部容。作者签名: 日 期:学位论文原创性声明本人重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文使用授权书本学位论文作者完全了解学校有关保留、使用学
3、位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名: 日期: 年 月 日导师签名: 日期: 年 月 日注意事项1.设计(论文)的容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文
4、)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体与大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外
5、文译文、译文原文(复印件)次序装订3)其它摘 要随着无线移动设备的发展,手机也日益普与,Android系统的推出使手机的发展进入到了一个新的领域,世界上一些知名的移动设备生产厂商对于Android智能机的开发热情也日益提高,Android系统的使用人群正在急速提升,Android应用程序的多样化对人们快速获取资讯以与方便人们的生活起着不可忽视的作用,近年来Android得到了社会更多的认同和应用,本文主要概述了Android系统的体系结构,Android应用程序的开发环境和用JAVA语言开发基于Android系统的课程管理系统中的一些技术实现方法,这些技术包括:基于Android系统的课程管理
6、系统的用户界面设计,SQLite数据库的建立和存储,在系统的设计与实现中,确定系统的开发思想以与开发环境,最后给出了系统中模块的详细设计与实现,并对系统模块涉与到的关键源代码进行了详细的分析,本人将在文中对各个技术要点进行具体的阐述,经过调试运行后表明,系统可以满足用户的各项需求。关键词:课程管理AbstractWith the development of wireless mobile devices, mobile phones have been increasingly popular, and the introduction of Android system has promo
7、ted the development of phones into a new area. Some of the worlds leading mobile device manufacturers have also shown great enthusiasm for the exploitation of Android intelligent machines. Beside, diversified Android application programs play a significant role in peoples quick access to information
8、 and facilitation of peoples life. Therefore, customers of this system are rapidly increasing In recent years. This paper outlines the architecture of Android system, its development environment and some technical implementation of Class management system on android system based on JAVA language. Th
9、ese technologies include the design of user interface of Class management system on android system, system calls of API, and establishment and storage of SQLite database. During the design and realization of the system, making sure the development thought of the system, at last show the design detai
10、ls with realize finally an a key for of detailed design with realization, and analyzed the program which relate to the system module The author will elaborate each technological point specifically in this paper. After debugging and running, it shows that the system can satisfy with users to buy the
11、things they need.Keywords: Class manage1 引言对于课程管理,相信大家都不会感到陌生,课程管理即是帮助老师和学生管理课程,最早以纸质的方式存在,随着科技的发展,电子课程管理也出现在了手机上,更方便的为人们管理课程,记录课程的相关信息。1.1 开发背景在中国,手机已经成为人们日常生活必不可少的一部分,智能手机在高校人群中逐渐得到了普与,Android手机凭借其优秀的系统性能以与良好的用户体验迅速得到了大学学生的青睐,在高校中,上课并不像高中时期有固定的教室和固定的时间,大学课程种类繁多,并且上课地点和时间都不固定,一周极少会出现重复课程,所以要将课程表完整的
12、记忆下来是一项很艰难的事情,每次上课时总有许多同学在上课的路上才想到不知道在哪个教室上课,于是不得不每次拿出手机打花两毛钱问同学,或者一些同学一直装个纸质的课程表在衣袋里,极不方便。鉴于Android手机在大学中的普与率很高,于是本人就想到了创作一个Android版的课程管理程序,将课程表放进手机里,无论在什么时候,只需打开自己的手机,便可方便的查询到自己的课程在什么时间,什么地点,什么老师上课。更不用担心走在路上突然忘了一会儿上什么课,随时随地,方便快捷。基于这些问题,有必要设计一款具有课程管理程序,从而避免遗忘上课的事情出现。1.2 课题研究意义在Eclipse开发环境下,运用Java语言
13、和Android的SDK开发一款课程管理软件,本软件除了可以与时的显示课程信息外,还可以增加更详细的上课地点与上课时间,还有对课后的课程作业增加到该课程信息中去,本系统可以在Android模拟器上运行,取得了很好的运行效果,希望这款软件可以给用户带来更快更准的信息与更简便的使用。1.3 开发工具与环境的选择本软件的开发环境是由Windows XP、Eclipse、Android SDK、ADT、JDK、SQLite数据库共同组建而成的。Android是一个包括操作系统、中介架构层与应用程序所产生出来的软件堆栈架构。由上而下,其核心为嵌入式Linux2.6作业系统,向上搭载Google为Andr
14、oid开发的类库与Android运行时,再配合应用程序架构,来开发各种不同的应用程序,下面介绍几个本系统开发所用到的功能特征,Android是一种基于Linux的自由与开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导与开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商与电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许
15、可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑与其他领域上,如电视、数码相机、游戏机等。Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。应用程序架构,在应用程序架构已经具备多种不同的基础组件,在开发应用程序时,就可以直接调用这些组件来使用,可以节省开发应用程序的心力与时间。SQLite数据库,SQLite提供结构化的数据存取,SQLite是一款轻型的数据库,它的设计目标是嵌入式的,目前已经在
16、很多嵌入式产品中使用了它,它占用的资源非常低,它能够支持Windows/Linux/U nix等主流的操作系统,同时能够跟很多程序语言相结合,比如PHP,Java等,还有ODBC借口,同样比起Mysql,PostgreSQL来讲,它的处理速度比它们都快,它无需安装和管理配置,它是一个储存在单一磁盘文件中的完整数据库,体积小只有250KB但支持数据库大小至2TB,它虽然很小巧,但是支持的SQL语句毫不逊色于其它开源数据库,同时它还支持事务功能和并发处理等等,SQLite也是一套开放性的关联式资料库,其特点在于轻量性方面的设计结构,更适合在手机上使用。1.4 Android环境搭建(1)安装JDK
17、Google方面为解决代码的分裂以与硬件平台的不统一的问题提出了一套“硬件+软件”的硬件设计标准,可以整合USB接口,他们的代号是“ADK”。这项功能会进入Android标准当中。而与此同时这个ADK标志是完全开放的,没有限制性条款。(2)下载Android SDKAndroid SDK(software development kit)软件开发工具包,被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合,因此,Android SDK指的是Android专属的软件开发工具包。(3)环境变量的配置,环境变量如图1.1所示。图1.1 环境变量(4)设置环境
18、变量下载后默认路径安装。设置环境变量后,单击“开始”,“运行” 输入:cmd命令,在CMD窗口中输入,javac看是否帮助信息输出,cmd运行如图1.2所示。图1.2 cmd运行(5)下载Eclipse,下载Eclipse如图1.3所示。图1.3 下载Eclipse(6)安装Eclipse(7)安装ADT打开Eclipse IDE,进入菜单中的“Help”,“Install New Software”,点击Add按钮,弹出对话框要求输入Name和Location:Name自己随便取,Location输入,安装ADT如图1.4所示。图1.4 安装ADT(8)EclipseEclipse是一个开放
19、源代码的、基于Java的可扩展开发平台,就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境,幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此,Eclipse还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具,由于Eclipse中的每样东西都是插件
20、,对于给Eclipse提供插件,以与给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。这种平等和一致性并不仅限于Java开发工具,尽管Eclipse是使用Java语言开发的,但它的用途并不仅限于Java语言,例如:支持诸如C/C+,COBOL,PHP等编程语言的插件已经可用,或预计将会推出,Eclipse框架还可用来作为与开发无关的其他应用程序类型的基础。2 研究现状与设计目标本软件现在可以进行多用户登录的操作和数据库基本的增加、删除、修改、查询的操作,更可以进行课程提醒的操作。本软件设计目标是能够让学生们用着方便,尽最大的可能去帮助学生们按时上课。2.1 课程管理
21、系统软件的特点由于大学里上课教室不定,每次上课时总有许多同学在上课的路上才想到不知道在哪个教室上课,于是不得不每次拿出手机打问同学,或是一些同学一直装个纸质的课程表在衣袋里,极不方便。现在Android手机在大学中的普与率很高,于是我就想到了创作一个Android版的课程管理,只要登录上,你就可以看见你所要上的是什么课,什么时间、哪间教室以与上课的老师,本软件还有一项特殊功能,就是闹铃提醒功能,你只要按下提醒按钮,到时间就会提醒你该去上课了,这样你就不会因为什么原因而忘记了上课。(1)系统管理员可以添加,删除,修改,查询老师,学生和课程的信息;(2)学生可以查询本班课程信息;(3)老师可以查询
22、自己的授课信息;(4)课程信息包括课程名称,上课时间,任课教师和上课地点;(5)针对课程进行闹钟提醒;(6)用户交互界面简洁友好,操作简单。2.1.1 界面特点现在手机的软件有很多,但是有的软件用起来很麻烦,让用户使用起来不是很舒服,本人在开发的时候吸取其他软件的弊端,让此软件更实用,本软件用户交互界面要简洁友好、操作简单,只是针对于课程的设计,不会有像其他软件一样有太多的复杂操作,更方便于老师以与学生使用。2.1.2 使用特点现在的手机软件很多,比如:应用软件、学习软件和游戏软件等等,有的软件操作不易,此软件非常易上手,没有过多复杂的操作,轻轻松松就可以很好的运行,这样不仅省时,而且还会轻而
23、易举的实现功能,满足客户的需要。2.2 现行研究存在的问题与解决办法在开发的时候,难免会遇到一些问题,比如有布局问题、SQLite数据库问题、权限登录问题、较高要求的课程提醒问题等,经过了问老师、查找资料、看教学视频等等一系列与问题有关的东西,最后终于完成。2.2.1 布局问题在开发的时候最难的以与最重要的就要数布局了,布局的好与坏完全可以表现出你的软件的好与坏,以与受欢迎度,在我刚开始设计布局的时候,就遇到了很多难题,比如有Linearlayout控件、TextView控件、Button按钮控件,经过查询书本、查询信息以与询问老师的讲解,终于知道了这些控件使用和控件的布局分布。2.3 本课题
24、要达到的设计目标本软件分为管理员、老师、学生三个用户的登录操作,管理员可以添加、删除、修改、查询老师、学生和课程的信息,老师可以查询自己的授课信息,学生可以查询本班课程信息,还有一个较高的要求,就是针对课程进行闹钟提醒,界面简洁友好、操作简单,更方便用户的使用。2.4 经济效益分析学生是一个大的集合,此软件主要就是面对学生开发研制的,现在主要面向的是大学生们,以后还可以面向初高中生,甚至面向小学生也不是不可能的,现在的Android手机占据着手机市场的大部分,将来的Android系统还会有更大的运作空间,一定会实现人手一部Android手机,学生当中使用Android手机的更是越来越多,所该软
25、件一旦投放到市场,学生的使用情况会越来越多,下载量就会日益增加。3 关键问题与分析在开发的时候,难免会遇到一些问题,比如有布局问题、较高要求的课程提醒问题等,经过了问老师、查找资料、看教学视频等等一系列跟问题有关的东西,最后终于完成。3.1 采用的关键技术本软件中主要采用的关键技术是UI界面设计,又叫布局控件技术,在开发Android软件中,最重要的就是布局,一个布局的好坏可以影响你的软件受欢迎的程度。3.1.1 UI界面技术在开发的此软件的时候,布局是最大的技术也是最大的难点,大多数的时间都是在思考布局的设计。此布局为Android中五大布局当中的一个布局,也是非常重要的一个布局,Linea
26、rLayout线性布局,它是最基本的布局控件,它的功能是在页面当中可以规定页面尺寸的大小,每一个Android软件的界面都会用到这个布局控件。3.1.2 UI界面介绍Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦,组件按照布局的要求依次排列,就组成了用户所看见的界面。Android有五大布局,分别是LinearLayout(线性布局)、FrameLayout(单帧布局)、RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)和TableLayout(表格布局)。LinearLayout是线性布局控件,它包含的子控件将
27、以横向或竖向的方式排列,按照相对位置来排列所有的widgets或者其他的containers,超过边界时,某些控件将缺失或消失,因此一个垂直列表的每一行只会有一个widget或者container,而不管它们有多宽,而一个水平列表将会只有一个行高。FrameLayout是五大布局中最简单的一个布局,在这个布局中,整个界面被当成一块空白备用区域,所有的子元素都不能被制定放置的位置,它们统统放于这块区域的左上角,并且后面的子元素直接覆盖在前面的子元素之上,将前面的子元素部分全面遮挡。RelativeLayout相对布局,在这个容器部的子元素们可以使用彼此之间的相对位置或者和容器间的相对位置来进行定
28、位。AbsoluteLayout绝对布局,也可以叫做坐标布局,也就是指定元素的绝对位置。这种布局简单直接,直观性强,但是由于手机屏幕尺寸差别比较大,使用绝对定位的适应性会比较差。TableLayout表格布局,TableLayout类以行和列的形式对控件进行管理,每一行为一个TableRow对象,或一个View控件。3.1.3 UI界面语言在编写布局的时候,是在XML文件里进行编写的,XML是指可扩展标记语言(Extensible Makeup Language),可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。XML文档必须包含根元素,该元素是所有其他跟元素的
29、父元素,XML文档中的元素形成了一棵文档树,这棵树从根部开始,并扩展到树的最底端,所有元素均可拥有子元素,父、子以与同胞等术语用于描述元素之间的关系,父元素拥有子元素,一样层级上的子元素成为同胞(兄弟或姐妹),所有元素均可拥有文本容和属性。XML是大小敏感的语言,所有元素都必须正确嵌套,必须有关闭标签,元素的属性值必须加引号,XML的命名规则,元素名称可以使用任何字母或符号(除 &),没有保留字,元素名称不能以数字或标点和“XML”“Xml”“xml”字符开始,也不能包含空格。XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言。3.1.4 UI编程工具介绍E
30、clipse是一个开放源代码的、基于Java的可扩展开发平台,就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境,幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此,Eclipse还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具,由于Eclips
31、e中的每样东西都是插件,对于给Eclipse提供插件,以与给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。这种平等和一致性并不仅限于Java开发工具,尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言,例如:支持诸如C/C+和COBOL等编程语言的插件已经可用,或预计将会推出,Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础。4 需求分析4.1 业务流程图4.1 系统流程图4.2 功能需求该程序运行时,有三个不同用户可以登录,分别是管理员、教师和学生这三个用户,管理员可以添加、删除、修改、查询教师和学生的课程信息,教师可
32、以查询自己的授课信息,学生可以查询本班课程信息,教师和学生用户中还有课程提醒功能,用户可以自己设置提醒的时间,当设置的时间到了的时候,则会弹出一个对话框,提示用户上课的时间快到了,请注意,这样就避免了上课迟到的现象,学生还可以根据课表的信息进行预习,教师也可以根据授课的信息提前进行备课,这样学生和教师都会对课上的容做好充分的准备。4.3 登录功能需求在登录界面时,会有三个选项,管理员、老师和学生,只有用户名、密码和你选择正确的权限时,才会通知你登录成功,否则会出现请输入正确的用户名或密码,当点击清除按钮时,会把你输入的用户名和密码全部清空,让你重新输入。4.3.1 管理员功能需求当选择为管理员登录时,你会看到老师、学生以与课程的所有信息,你还有权限去增加、删除、修改所有的老师、学生以与课程的信息,这是老师和学生都没有的权利,管理员可以控制一切。4.3.2 老师功能需求当选择为老师
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1