内容发布更新时间 : 2024/12/23 23:35:27星期一 下面是文章的全部内容请认真阅读。
龙源期刊网 http://www.qikan.com.cn
基于Android平台的移动学习系统的设计与实现
作者:李向东 杨昕
来源:《计算机时代》2014年第04期
摘 要: 在移动互联网时代,为满足随时随地进行学习的需求,设计了一种基于Android平台的移动学习系统,该系统可以运行在基于Android系统的手机和平板电脑等终端上,能够进行学生课程学习,学生与教师进行在线交流等教学活动。系统采用J2ME技术进行开发,能够跨平台运行,客户端用户登录使用OAUTH认证;用户可以通过RSS订阅学习课程,简便及时;系统的XML数据采用SAX解析,使得读取和操作XML数据的更快速。系统使用流量小,经济投入少。
关键词: Android平台; 移动学习系统; OAUTH认证; RSS订阅; SAX解析 中图分类号:TP311 文献标志码:A 文章编号:1006-8228(2014)04-24-03
Abstract: In the mobile Internet era, in order to learn whenever and wherever possible, a mobile learning system based on Android platform is designed. The system can operate on phones and tablet PCs based on Android. Students can learn and communicate online with teachers. J2ME technology is utilized to develop this system, which can run across platforms. The client user can login by OAUTH authentication and learn the course through the RSS subscription convenient and timely. XML data is analyzed by SAX, which makes reading and manipulating XML data be more quickly. The system requires smaller flow and less investment.
Key words: Android; mobile learning system; OAUTH certification; RSS curriculum subscription; SAX analysis 0 引言
移动终端和移动互联网近几年发展迅猛,基于Android移动终端价格低,WIFI无线网和移动网络资费便宜,这使移动互联网4G已经开始进入人们的生活,人们已经不满足于PC上的数字化学习(E-learning)了,逐渐迁移到使用手机等移动终端的移动学习(Mobile Learning)上。移动学习是一种借助移动终端不受时间、空间的限制发生的学习,可以为人们提供随时随地的学习体验[1],打破了传统教育在地域和时间上的限制,这是一种未来的不可缺少的学习模式,也对实现终身化学习理念有着极其重要的意义。 1 移动学习系统需求分析 1.1 功能需求
龙源期刊网 http://www.qikan.com.cn
教师可以通过PC的浏览器对移动学习系统进行管理,例如添加通知、管理课程学习材料、师生进行在线交流等,学生可以使用手机客户端通过无线网络查看通知、进行课程的订阅、浏览文本/课件/教学视频等学习资料、与教师进行在线交流等。 1.2 经济需求
移动学习要能满足大多数人的需求,经济投入少。而采用基于Android平台进行开发经济实惠,Android平台的移动终端品牌多,市场占有率高,可选择余地大,价格便宜[2]。 1.3 技术需求
采用JAVA技术进行开发,并与Android平台结合,非常便捷,软件跨平台,方便移植。 2 移动学习系统开发的关键技术 2.1 J2ME技术
系统采用J2ME(Java 2 Micro Edition)开发,J2ME是把Java应用于移动通讯设备、嵌入式设备或消费性电器而推出的一项技术。由于技术开放、源代码开源,使得系统能够跨平台运行实现[3],基于Android平台移动学习系统采用J2ME技术开发比较合适,也能够方便地迁移到Windows Phone等其他平台,还可以迅速通过本地协议将存储在客户端信息调出来供用户浏览,在系统需要时才从互联网下载信息,节省流量,减少带宽的占用。 2.2 OAUTH技术
OAUTH是一种安全的、开放而又简易的用户资源的授权协议,各大互联网公司都提供了OAUTH认证服务,移动学习系统采用OAUTH认证,可以有权访问用户授权的资源,比较简捷,同时用户信息不会泄露,安全性高[4]。 2.3 Android后台Service技术
Service是运行在后台,不和用户交互应用的服务。Service自己不能运行,需要通过Activity或者其他Context对象来调用,在移动学习系统客户端使用Context.startService()方式启动Service[5]。后台服务运行的学生Android客户端能够快速启动,并且保证及时接收到推送信息。
2.4 RSS及SAX技术
RSS(Really Simple Syndication)是一种用于共享新闻和其他Web内容的数据交换规范,起源于网景通讯公司的推\技术,通过RSS技术将客户订阅的内容传送给移动学习系统客
龙源期刊网 http://www.qikan.com.cn
户端。对于RSS中传递的XML使用SAX来解析,这是读取和操作XML数据的更快速、更轻量的方法[6]。
3 Android移动学习系统总体架构
图1是移动学习系统的总体架构,系统采用三层的C/S+B/S模式架构,学生使用Android客户端通过WIFI/3G/4G无线网络,采用OAUTH认证登录,进行RSS订阅、课程资源访问;教师使用PC中的WWW浏览器进行移动学习系统的管理。
移动学习系统采用三层结构开发,如表1所示,第一层为用户层,分为PC客户端和Android客户端,负责用户界面的设计;第二层为业务逻辑层,包括应用服务器,如采用Tomcat搭建Web服务器层;第三层为数据操作层负责数据的存取,服务器数据库采用MYSQL搭建,Android手机客户端采用轻量级的sqllte3,符合客户端存储数据量少的特点。 4 系统流程设计
整个移动学习系统设计了三种角色:Android客户端的学生用户、PC浏览器端的教师和系统管理员。系统的流程图如图2所示。Android客户端可以通过OAUTH技术授权认证。学生可以进行课程的通知订阅,在课程学习资料中浏览课程的课件和视频等学习资料,和教师进行在线的交流,对教师发布的课程练习题进行操练。教师通过PC浏览器端进行课程的管理,包括:课件、视频的发布、修改、删除,发布最新的课程通知,和学生进行在线的学习交流等等。管理员用户可以对系统进行配置、管理各功能模块、用户权限的设置等等。 5 系统功能模块设计 5.1 用户登录模块设计
学生Android客户端采用OAUTH认证登录,OAUTH认证服务作为一个开放的服务和服务标准,任何第三方软件都可以使用,任何系统都可以实现自身的OAUTH认证服务,移动学习系统使用OAUTH认证服务提供的JAVA语言开发包进行开发,从而大大节约了程序员的时间,开发也非常简易。包括Google,Yahoo,Microsoft在内的很多互联网大公司都提供OAUTH认证服务,移动学习系统采用新浪微博、腾讯QQ和人人网的认证服务,系统允许采用这些平台的账号直接登录,方便了用户的操作。移动学习系统向这些OAUTH认证服务提供商请求未授权的Request Token。向RequestTokenURL发起请求,然后获取用户授权的Request Token,最后用授权的Request Token换取Access Token,当系统拿到Access Token后,就可以有权访问用户授权的资源了。系统中新浪微博的OAUTH认证具体的流程如图3所示。 5.2 课程通知订阅模块
课程通知模块采用RSS内容聚合模式技术开发,使用RSS,服务器可以统一为学生Android客户端推送订阅信息,可以快速地了解课程最新信息,获取系统内容更新,具有较高