基于安卓平台的互动式教育App设计与实现毕业论文
2020-04-10 14:43:51
摘 要
在互联网飞速发展的21世纪,智能手机越来越普及,人民生活质量不断提高,教育作为每个人生活中不可或缺的一个部分,也不断提出新的要求,教育与信息技术不断进行深度融合成为了不可避免的趋势。线上的教育与学习成为了当代学生学习的重要手段之一。
在智能手机中,Android平台约占75%市场份额,研究Android平台上的教育应用更具有广泛性和代表性。本文详细论述了基于Android平台的互动式教育APP——“芝士盒子”的设计与开发的整个过程,囊括了本项目的开发背景与意义、系统的需求分析、整体设计以及各模块的设计与具体实现,以及最终系统各模块的测试结果。
本应用旨在为中小学生提供线上学习交流平台,用户在学习中遇到的任何问题都可以在本平台上寻求解答,同时也能从解决他人问题过程中不断完善自我知识体系。除此之外,本应用还提供聊天功能供用户之间进行即时交流,以及课程功能供用户学习新的知识。为提高用户的学习效率,劳逸结合,培养用户关心时事的习惯,本应用还提供资讯功能,使用户在学习之余也能关注时下热点。
关键词:Android;互动;教育APP
Abstract
In the rapid development of the Internet in twenty-first Century, smart phones are becoming more and more popular, the quality of life of the people is increasing. Education is an indispensable part of everyone's life, and new demands are constantly put forward. The continuous development of education and information technology has become an inevitable trend. Online education and learning have become one of the important means for contemporary students to learn.
In smart phones, the Android platform accounts for about 75% of the market share. Research on Android platform is more extensive and representative. This paper expounds the whole process of the design and development of the interactive education APP based on Android platform, "cheese box", including the background and significance of the development of the project, the requirement analysis of the system, the overall design and the design and implementation of each module, as well as the test results of the final system modules.
The purpose of this application is to provide an online learning and communication platform for primary and secondary school students. Any problem encountered by the user can find solutions on this platform, and can also improve the self-knowledge system in the process of solving other problems. In addition, this application also provides chat functions for instant communication between users, as well as course functions for users to learn new knowledge. In order to improve the user's learning efficiency, work and rest, and train the user's habit of caring about current affairs, this application also provides information function, and the users can also pay attention to the hot spots in the spare time.
Keywords:Android; Interaction;Education APP
目 录
摘 要 I
Abstract II
第1章 绪论 1
1.1目的及意义 1
1.2国内外现状 1
1.3论文提纲 2
第2章 系统相关技术介绍及需求分析 4
2.1Android系统开发简介 4
2.2软件开发工具与环境 6
2.3Android Studio简介 6
2.4Mob短信验证平台SDK 6
2.5Bmob移动后端云服务平台 7
2.6SharedPreferences与SQLite数据库 7
2.7需求分析 8
2.7.1功能需求分析 8
2.7.2性能需求分析 8
第3章 总体设计与实现 10
3.1总体设计 10
3.2启动页设计与实现 11
3.3用户注册与登录功能设计与实现 12
3.3.1用户注册功能设计与实现 12
3.3.2用户登录功能设计与实现 17
3.4模块功能设计与实现 19
3.4.1问答模块设计与实现 19
3.4.2聊天模块设计与实现 21
3.4.3课程模块设计与实现 22
3.4.4发现模块设计与实现 22
3.4.5个人资料模块设计与实现 23
3.5数据库 23
3.6后台云服务器 24
第4章 系统测试 26
4.1注册功能测试 26
4.2登录功能测试 28
4.3问答模块功能测试 29
4.4聊天模块功能测试 30
4.5课程模块功能测试 32
4.6资讯模块功能测试 32
第5章 总结与展望 34
参考文献 36
致 谢 37
第1章 绪论
1.1目的及意义
在这个互联网飞速发展的时代背景下,智能手机越来越普及,人们生活的方方面面与智能手机越来越密不可分,教育作为每个人生活中不可或缺的一部分,也不断提出新的要求,信息技术与教育的深度融合成为了不可避免的趋势。《国家中长期教育改革和发展规划纲要 (2010-2020年)》中指出,信息技术与教学深度融合,促进教学内容、手段、方法的现代化[1]。近年来,教育不再是仅仅局限于实体课堂授课或是老师面对面辅导的形式,各式各样的智能手机应用为教育创造了更多可能。学生不再被时间及空间所限制,通过移动应用就可以随时随地进行学习,与此同时,老师也可以进行线上授课[2]。除此之外,通过一些移动应用学生与老师可以即时沟通,解决学生在学习生活中遇到的种种问题与疑惑。这些移动应用与传统教学方式互补互促,使教育更高效、互动性更强,同时针对迥异的学生个体具有个性化更强的特点[3]。
在众多移动终端操作系统中,2007年Google公司所开发的安卓系统脱颖而出,短时间内其市场占有份额就超越了Apple公司所开发的IOS系统,从而处于第一位。除用户覆盖面广以外,其突出优势即它的开放性,体现在它具有开源的代码库、免费的开发软件,同时有众多的第三方开源共享,同时它还具有丰富的硬件支持、开发的简便性、谷歌的全方位支持等显著特点,这些优势使得安卓吸引众多开发者与使用者。
综上所述,本文将研究一款基于安卓平台的互动式教育移动应用开发——“芝士盒子”,针对广大安卓平台的中小学阶段用户开放,旨在构建一个中小学生交流沟通的平台,用户既可以随时随地在手机上提出问题,平台将即时提供解答,除此之外,用户通过互动可以解决学习中遇到的种种疑惑,通过多人聊天,即时与其他用户交流学习心得、解题思路,摆脱了用户遇到问题无人求助的困境。
1.2国内外现状
目前国内外各大市场上的教育类移动应用主要分为四大类:真题题库类、网校视频类、作业答疑类和实时辅导类。
网校视频类移动应用是教育类应用最初的形式之一,同时也是目前覆盖面最广的一种形式。它将线下讲堂搬到线上,经由视频录像或及时直播的体例完成在线讲课,比方“中小学移动讲堂”,冲破了地区和时间的限定,各地的用户都可以在平台上观看视频完成课程的进修。但此类应用一般单一的为老师授课,而缺少课堂原有的互动性,老师无法即时解决学生的疑惑,难以达到比拟线下授课的效果。
真题题库类移动应用是由服务方提供各种真题以及模拟题,形成题库,用户在手机上即可完成真题练习、在线批改纠错等功能,例如“猿题库”。此类应用的优势是令学生摆脱环境的束缚,不再需要纸和笔就可以随时随地都能完成练习,不断巩固自己的知识。同时其中一部分应用还具有错题集功能,即自动将用户做错的题目生成错题集,供用户通过反复练习,完善自己的知识薄弱点。但此类应用答案及解析一般由平台统一给出,然而用户层次参差不齐,其标准答案无法为所有用户接受,常会出现用户看不懂答案的现象,长此以往,导致用户只顾做题而不能很好的解决自己的疑惑,导致其练习的成效甚微,同时由于仍旧延续了题海战术,缺少知识的系统性与联系性,有可能导致学生只关注于做题,而并非真正的掌握了知识。
作业答疑类移动应用是目前较为受欢迎的形式,通过构建一个自由交流的平台,用户在平台上自由提出问题,由老师或其他用户自由评论回答问题,同时还可以通过搜索的方式寻找相同或相似问题以及解答,例如“小猿搜题”和“作业帮”。此类应用能一定程度的解决用户的疑惑,但由于无法即时回复的弊端,用户的问题很难即时得到解答,与此同时,给出解答的用户的水平也参差不齐,所给出的答案正确性无法保证,极有可能对用户产生一定程度的误导。
实时辅导类移动应用通过构建一个老师与学生实时沟通的桥梁,它结合了网校视频类应用和作业答疑类应用的优势,使老师不仅能够针对不同的学生完成个性化的授课,同时还能即时解答学生提出的各种疑惑,能够较好的达到线下课堂的学习效果,例如“微师”。但正是由于其个性化和实时性导致其成本与线下课堂不相上下,甚至更高,这代表着用户需支付高昂的费用才能完成学习,令此类应用的门槛变高,其受众也相对减少。
由此可见,目前国内外市场上流行的各种教育类移动应用虽然功能与定位各不相同,但都有其显著优势与不可避免的缺点,如何结合其优点的同时改善其缺陷,使得教育与信息技术的高效、深度融合成为了开发者们不得不思考的问题。
1.3论文提纲
本文将针对基于安卓平台的互动式教育移动APP——“芝士盒子”进行需求分析、总体设计、软件代码编写、软件测试等工作,主要包含以下功能:用户注册与登录、记录文字、编辑与传送图片、文件下载、音频以及视频传输、单人以及多人间即时通讯、用户参与度统计。
论文章节安排如下:
第1章:绪论。主要陈述设计的目的与意义,以及介绍国内外同类APP的发展现状及优缺点,最后对论文进行总体安排与分配。
第2章:系统相关技术介绍及需求分析。主要介绍设计过程中所使用的技术以及设计的理论知识,包括安卓开发环境、第三方SDK、数据库等的介绍,同时对本应用进行需求分析。
第3章:总体设计。主要陈述APP整体功能的设计,对系统框架以及各个模块功能的划分的设计,与其各项功能的具体实现情况。
第4章:系统测试。陈述系统的各项功能的完成和测试情况。
第5章:总结与展望。主要介绍本次设计完成过程中的经验,总结遇到的问题与自身的不足,同时讲述对未来的展望。
第2章 系统相关技术介绍及需求分析
2.1Android系统开发简介
Android是谷歌基于Linux平台的开源移动操作系统[4],其推广后的短时间内,就从许多操作系统脱颖而出,这与它真正的开放性密不可分,于是吸引了众多遵循爱好者,因为它不同于其他操作系统,任何人可以根据他的喜好设置各项功能,使其具有个性化特征。除此之外,Android也是一个免费的平台,这意味着更多的生产者与开发者可以根据自己的能力自由在系统中加入自己特有的功能或者装置。最后,其相较于其他系统更为先进,即使移动终端的型号不同,只要位于该平台上则应用程序大多可以兼容,因此,程序开发者不再需要为兼顾不同型号的移动终端而困扰。随着时代发展,兼顾了开放、免费、先进的Android系统不但没有被抛弃,反而吸引了越来越多人的关注[5]。
Android体系结构如图2-1所示。从图中可以看出,Android分为四层,由高至低分别是:应用层、框架层、硬件抽象层以及Linux内核层[6]。
图2-1 Android体系结构图
应用层:这一层关键程序组成,如web浏览器、SMS收发器、联系人管理、日历等,这些程序均运行在虚拟机上。
框架层:这一层主要由视图、通知管理器、活动管理器和其他API组成。Android平台上的应用程序是基于框架和组件开发,和Android本身在其框架为大多数开发人员提供的许多组件,这些组件可以提供应用程序的快捷的调用方法,而开发人员可以开发组件添加到框架,为自己和其他应用程序调用[7]。
硬件抽象层:这一层主要由C语言标准库等组成,该层的主要功能是用于支持框架层 [8]。
Linux内核层:这一层主要由进程/线程、电源管理和驱动组件组成,Android平台是在Linux内核上进行优化的成果,同时,该层也用于连接软件和硬件[9]。
Activity是Android类的核心,它是应用程序中最常用的组件,每一个Activity都提供一个可视的区域,用于放置各种各样的控件,几乎所有的Activity都可以与用户进行互动,而调用不同的函数可以改变它的状态。
Service是在后台运行的组件,没有能够连接可视的接口,因此它不会直接与用户进行互动[10]。当用户在做其他活动时,服务主要用于控制后台功能的操作。与此同时,其他应用程序也可以与共享接口和服务进行通信。
2.2软件开发工具与环境
开发环境:Android Studio 3.0
开发语言:Java
模拟机平台:AVD
手机运行平台:Android 及以上版本
开发所需插件:SDK、JDK
UI界面设计软件:Photoshop CS6
2.3Android Studio简介
Android Studio是进行Android开发的一个免费的开发环境,它是基于IntelliJ IDEA的,类似于Eclipse、ADT插件和SDK管理器的融合。用户仅需要单次配置就可以轻松地构建一个Android开发环境[11]。
2.4Mob短信验证平台SDK
如今,网络逐步要求实名制,短信验证码的推广正是很好的保证了网络的安全性。首先,短信验证注册要求使用真实、正确的手机号码,可以防止恶意注册,一定程度上的避免了不良信息的发布。其次,短信验证是平台验证用户真实身份的一个较为简便的实现方式,对于平台来说,验证要求填写本人使用的手机号码,以便确认用户的身份。对于用户来说,手机号码验证相对于验证身份证等证件号码更具有隐蔽性与便捷性。最后,一个账号与一个手机号绑定可以更好的保证用户日后的使用,例如利用手机号码找回密码、确认交易等功能,同时还可以提供额外的功能,例如绑定手机通讯录等。
Mob提供一个免费的短信验证平台,通过在其官方网站上注册即可创建自己的应用,下载SDK导入到自己的项目中,这样使用该平台的用户即可以通过填写手机号码和收到的验证码验证注册。
2.5Bmob移动后端云服务平台
服务器是一个需要网络服务的程序的重要部分。为了简化开发和部署的工作,使开发人员更关注主体部分的开发,越来越多的公司将后端服务集成到开发人员的API调用中,这就是BaaS [12]。Bmob是这个国家仅有的三家推出此类服务的公司之一。
Bmob提供简单易操作的数据储存功能,除了提供对数据的编辑API之外,还提供了离线数据操作功能,其数据关联功能可以极大降低实现发布文字等功能的难度,除此之外,其数据多线程操作和回调操作大大优化了数据处理性能。通过采用官方提供的API就可以完成各类型文件的存储功能。针对移动应用开发的特点,Bmob提供推送服务,开发者可以通过利用推送服务通过服务器及时向用户推送关于应用的最新资讯,同时还可以对用户进行通知。在数据类型上,其丰富的数据类型也可满足开发者的基本开发需求[13]。
最重要的是,Bmob对用户进行虚拟隔离,开发者均能独立的使用该平台,某一用户的流量或数据变化均不会影响到其他用户,这就代表着该服务平台拥有一定的安全性和可靠性。
2.6SharedPreferences与SQLite数据库
Android系统为开发者提供了许多种数据存储的方法,本设计需要使用到的是SharedPreferences和SQLite数据库。
SharedPreferences指共享优先储存,是Android平台上的一种轻量级的储存类,通过调用函数即可实现数据的读取和保存。它支持三种访问模式:私有、全局读和全局写。在对于一些较为简短的数据,例如账号、密码和昵称等,可以通过调用相应的函数直接存储在SharedPreferences中。
自各式各样的应用程序诞生以来,数据库就一直作为应用程序的主要组成部分,但由于数据库的管理系统相较于其他部分更加庞大且复杂,所以在应用程序中会占用更多的资源。随着科技的不断发展,嵌入式应用程序逐步映入人们的眼帘,其中,开源的SQLite是嵌入式关系数据库,它需要更少的系统资源,高效,强大的可移植性,更值得信赖,同时,开发人员无需作其他配置。与传统数据库不同的是,它放弃了复杂的使用和管理,只保留基本数据操作的功能,将其他工作交给系统的其他组件。除此之外,由于使用SQLite时开发者不需要进行网络的配置和管理,降低的许多额外的成本。
2.7需求分析
2.7.1功能需求分析
本应用定位为互动式教育类应用,主要用户为中小学生人群,所需包含的功能有:用户注册、用户登录、发表问题、解答问题、通讯录功能、点对点及多人即时通讯、观看课程、浏览资讯、个人资料管理。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示:
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。