基于Android的在线视频学习平台的设计与实现

2018-02-25 02:39王雨王宏
电子技术与软件工程 2018年7期

王雨 王宏

摘要 本文介绍了一个基于Android的在线视频学习平台,其由Android端及Web端组成。Android端提供在线学习、在线交流、课程选择及学生个人管理等功能,Web端使用JsP技术开发,提供用户信息以及平台数据的管理功能。

【关键词】在线视频学习 在线交流 教学辅助

随着计算机网络的迅猛发展,使得网络教学获得了强大的技术支持和手段方法,网络教学的应用日趋广泛,己成为世界各国教学改革和发展的重要手段和途径。

目前,已存在许多成熟的大型网络教学平台,这些平台普遍具有多学科、多课程的特点,其优势在于能够提供全面且通用的教学功能,但在实际的教学应用情况中,往往存在着较大的差异,大型网络教学平台很难满足所有学校的网络教学需求。

因此,立足学校的实际工作,根据学校自身的教学需要及教学模式的不同,结合学生个性化学习的特点,开发具有针对性的以视频在线学习方式为主的校园网络教学平台势在必行。

本项目从上述问题出发,结合校园教学实际特点,致力于提供学生课下自主学习、知识点巩固练习、教师课下答疑,批改作业等系统化、便捷化、个性化的网络教学解决方案。

本项目尝试将慕课形式引入校园,将校园与慕课相结合,发挥二者的優势,增强视频学习与学校课程的容错率,既实现以学习者为主体的学习,又可以满足学校具体教学及学生个性化学习的需要,以良好的灵活性和实用性,最终使学生、教师和学校都可以从中获益。

1 学习模式

平台主要通过三个部分来辅助学生进行学习:视频学习,习题练习以及在线交流。

以课程为主要载体,承载视频,习题和交流三个功能:

1.1 视频学习

用户通过视频的方式来进行主要内容的学习,视频以课程作为分类。

1.2 习题练习

用户用过练习习题的方式来巩固在视频中学习的内容。习题练习的方式有两个,一个是在视频中出现的相应习题,对应当前正在学习的内容,另一个是在课程界面可以点击的全部习题,方便再次查阅复习巩固学习习题。

1.3 在线交流

由于是将视频学习和线下的校园进行了结合,所以会有老师加入这部分,来进行和学生的沟通交流,解答学生在视频和习题中的疑惑。另外学生之间也可以进行交流,方便互相交流各自的学习成果。

2 平台架构

如图1所示,本平台主要分为Android端和Web端两个部分,Android端负责学生用户的学习与教师用户的参与,Web端负责教师的数据整理与传输,已经为Android端提供数据。

Android端,界面上使用了常用的控件,部分地方使用了Fragment,而在关键的视频部分,引入开源项目jcvideoplayer(以下简称jc),并对其进行定制。在jc的设计中,视频播放器中有上下两个层,下层负责播放视频,上层负责控制视频。根据功能需要,在上层中加入了视频标签。为了实现回答问题的功能,加入了第三界面,覆盖在第二界面上,保证回答问题不会导致视频内容出现问题。数据使用了两个部分,一部分不重要的数据存在本地的SharedPreferences中,而重要的数据都通过网络访问从Web端获得,获得的数据为json文件,解析后就可以直接使用。为了保证主线程的运行,网络访问都写在AsyncTask中,异步进行处理。在程序运行的同时,加入了CrashHandler对程序进行监控,如果出现了意料之外的错误,都会保存为一个txt文件,方便用户的反馈和程序的优化。

Web端,界面上使用了Bootstrap框架,快速的生成了简介的界面,然后在服务器端使用Servlet进行处理,简单的MVC模型将程序的结构整理出来,使用了JDBC访问服务器的数据库MySQL,使用log4j生成日志文件,对程序的运行情况进行有效的监控。

3 系统设计

3.1 Android端

3.1.1 用户

未登录时,用户可以选择登陆;登陆之后,用户可以在个人界面管理自己的头像、密码、邮箱、退出登陆等

3.1.2 课程

课程作为学习内容的主要载体,包含了课程的简介,公告,习题以及视频四个模块:

(1)简介模块:用户可以通过本功能阅读课程的介绍,方便用户掌握学习的大体内容

(2)公告模块:管理者可以通过本功能向学习者发布公告;

(3)习题模块:用户可以在本模块下复习本课程的所有相关习题。

3.1.3 视频

此处的视频即视频模块,主要功能是播放课程的教学视频。在视频模块中有讨论、课件、习题和标签四个辅助模块:

(1)讨论模块:用于用户进行提问讨论,方便用户和老师以及其他用户的沟通交流

(2)课件模块:用户可在此处下载视频相关的当堂课程的课件

(3)习题模块:用户可在视频播放的时候看到部分习题

(4)标签模块:用户可在视频播放的时候加入课件,标记当前的播放位置,用于复习的时候切换视频播放位置。

3.2 Web服务端

使用JSP和servlet编写,Model层是JavaBean,Controller层用于从MySQL调用数据,servlet用于操作数据,并进行接收和反馈。

本Web部分没有界面,只留出对外的数据接口,进行数据的交流,主要用于操作数据库数据。

3.3 Web管理端

仅用于管理者操作数据库数据,后端的接口和Android端使用同一个接口。

4 总结

本系统以结合慕课和线下校园教学为目标,将线下的老师和线上的视频教学相互结合,对教学中的各个环节都进行组合设计,提供方便的在线学习功能。本系统具有较强的实用性,可以为用户提供大多数他们所需要的功能。

参考文献

[1]况君,基于Android平台的手机在线视频播放系统的设计和实现[J].无线互联科技,2016 (05):21-22.

[2]郭忠南.基于Android的视频在线播放功能的设计与实现[J].无锡职业技术学院学报,2016 (05): 43-46.