基于WAP的移动学习平台的设计与实现
时间:10-06
来源:通信世界网
点击:
随着计算机网络与通信技术的迅猛发展,教学及学习模式也在发生改变。一种崭新的学习模式--移动学习,已成为当今教育技术领域研究的新热点。这种新型学习模式利用无线移动通信网络技术以及无线移动通信设备(如手机、PDA等)获取教育信息、教育资源和教育服务,具有知识获取的主动性、学习设备的移动性、学习过程互动性和教学活动情景性等特征。目前移动学习的发展趋势是利用手机进行自主学习。日趋强大的手机功能和蓝牙、WAP和GPRS等技术的日趋成熟以及3G的到来,使智能手机作为一种特殊的学习终端,催化了移动学习的发展。本文主要研究WAP技术,设计并实现了基于WAP技术的手机移动学习平台,使学习者能够借助手机的移动性、实时性和互动性,"随时、随地、随身"地进行交互式学习。
1 主要应用技术
1.1 无线应用协议WAP
WAP(Wireless Application Protocol,无线应用协议)是开发移动网络上类似互联网应用的一系列规范的组合。它起着连接移动网络和Internet的桥梁作用,使得用户无论在何时、何地都可以使用支持WAP的手机获取网上信息和网上资源。
WAP应用模型由,WAP客户端、WAP网关和WAP内容服务器三部分组成,这三者缺一不可。客户端主要指支持WAP协议的移动用户设备终端,包括WAP手机和个人数字助理(PDA)等。WAP网关是WAP应用实现的核心,由协议网关和内容编解码器两部分组成。协议网关用于实现WAP协议与Internet协议之间的转换,它起着"翻译"协议的作用,是联系移动网络和Internet的桥梁。WAP内容服务器存储着大量的信息,以提供WAP手机用户来访问、查询、浏览等。
基于WAP实现信息服务的过程为:当用户从WAP手机键入WAP内容服务器的URL后,信号经过无线网络,以WAP协议方式发送请求至WAP网关,然后经过"翻译"处理,再以HTTP协议方式与WAP内容服务器交互,最后WAP网关将服务器返回的内容压缩、处理成Binary流,并返回到客户的WAP手机屏幕上。
1.2 无线标记语言WML
WML(Wireless Markup Langtaage,无线标记语言)是基于扩展标记语言XML(Extension MarkupLanguage)标准的、适用于无线环境的标记语言,用wML编写的网页可以在移动终端的微浏览器上提供文本浏览、数据输入、图像和表格呈现以及按钮和超级链接等功能。
WAP的内容以WAP页面作为载体,用WML编写的页面通常叫做卡片组(deck),由一组相互链接的卡片(card)组成。卡片中包含文本、标记、表格、链接、输入控制、事件、任务、图像等元素,这些元素的有序组合构成了页面的主要业务逻辑。每张卡片都是相互独立的用户交互操作单元,卡片之间可以链接切换。当移动电话访问一个WML页面时,页面的所有卡片都会从WAP服务器下载到设备里,卡片之间的切换由内置的计算机处理,不需要再到服务器上取信息。
2 学习平台总体设计
根据一般用户的学习习惯与需求,方便用户随时随地进行学习,这里所设计的移动学习平台分为两种学习模式,即在线学习模式和离线学习模式。在线学习模式主要包括课程资源的下载、课程作业的上传、实时答疑及课程讨论等功能模块。离线学习主要包括学习者根据自己的学习情况制定学习计划,进行课程相关的课件学习、学习记录统计和课后测试等。在线学习需要登录到服务器后才能进行,而离线学习只需要本地资源。
3 系统实现
在实际的系统开发中,以Red Hat Enterprise Linux 5为平台,以Apache Tomcat 5.5为WAP服务器,采用JSP和WML相结合的方式,按照MVC2模式进行各个模块的设计和实现。系统的后台数据库选择可跨平台的MySQL,采用JDBC方式,在对数据库的操作上通过建立一个ConnectionManager类来提供对数据库的连接,然后通过DAO模式来调用。MVC2具体是指使用JSP+Servlet+JavaBean技术方案:Model层实现系统的业务逻辑,这里使用DAO模式封装对数据的操作;View层用于与用户的界面交互,采用JSP,wML结合实现;Controller层是Model层与View层间的纽带,使用Servlet来完成有效控制。
WAP页面不同于普通Web页面,如果要在电脑终端上测试和浏览JSP实现的WAP应用,除安装Java虚拟机(JRE)外还需要安装支持WAP的浏览器(即手机模拟器)。目前,常用的WAP浏览器中,M3gate测试的最为严格和标准,因此本文采用此软件进行测试。
4 系统开发中的问题及解决方法
(1)系统发布
若要将WAP应用发布至外网,必须将代码应用到服务器平台上。为使Apache服务器能提供完整的WAP服务,需要将WAP的五种MIME类型添加到Apache服务器的主配置文件中。首先,使用命令"vi/etc/httpd/conf/httpd.conf"编辑Apache的主配置文件httpd.conf。然后,定位到AddType区域,按a进入插入模式,以"AddType text/vnd.WAP.wml"格式将五种MIME类型添加进主配置文件,保持退出。最后,使用命令"/etc/init.d/httpd restart"重新启动Apache服务即可。
(2)中文编码
采用:M3gate浏览WAP页面时,有时会出现汉字为乱码的情况。这是由于系统编码问题造成的,WML的缺省编码是UTF-8,而汉字用的是GB2312编码。要正常显示,需要将GB2312编码转换为UTF-8。在系统中,通过Java编写的字符转换类来实现。首先输出UTF-8中汉字编码的前缀"",再通过字符转换工具输出汉字所对应的16进制码,最后再输出字符串结束标记";"。
(3)移动设备本身的局限
移动设备往往存在屏幕小、内存不大、显示内容有限的问题,因此,在页面的设计中必须添加方便、快捷的返回链接,避免使用复杂的页面布局元素。考虑到不同厂商不同型号的移动终端的差异性,要采用多种终端设备进行测试,保证WAP页面浏览时的通用性。
(4)费用控制
移动设备通过WAP方式访问通常需要支付流量费,为了减少流量,避免给用户产生昂贵的通讯费,在WAP页面中显示的内容应该力求简短。WML文件也应尽量简短,一般控制在2 KB以内。
1 主要应用技术
1.1 无线应用协议WAP
WAP(Wireless Application Protocol,无线应用协议)是开发移动网络上类似互联网应用的一系列规范的组合。它起着连接移动网络和Internet的桥梁作用,使得用户无论在何时、何地都可以使用支持WAP的手机获取网上信息和网上资源。
WAP应用模型由,WAP客户端、WAP网关和WAP内容服务器三部分组成,这三者缺一不可。客户端主要指支持WAP协议的移动用户设备终端,包括WAP手机和个人数字助理(PDA)等。WAP网关是WAP应用实现的核心,由协议网关和内容编解码器两部分组成。协议网关用于实现WAP协议与Internet协议之间的转换,它起着"翻译"协议的作用,是联系移动网络和Internet的桥梁。WAP内容服务器存储着大量的信息,以提供WAP手机用户来访问、查询、浏览等。
基于WAP实现信息服务的过程为:当用户从WAP手机键入WAP内容服务器的URL后,信号经过无线网络,以WAP协议方式发送请求至WAP网关,然后经过"翻译"处理,再以HTTP协议方式与WAP内容服务器交互,最后WAP网关将服务器返回的内容压缩、处理成Binary流,并返回到客户的WAP手机屏幕上。
1.2 无线标记语言WML
WML(Wireless Markup Langtaage,无线标记语言)是基于扩展标记语言XML(Extension MarkupLanguage)标准的、适用于无线环境的标记语言,用wML编写的网页可以在移动终端的微浏览器上提供文本浏览、数据输入、图像和表格呈现以及按钮和超级链接等功能。
WAP的内容以WAP页面作为载体,用WML编写的页面通常叫做卡片组(deck),由一组相互链接的卡片(card)组成。卡片中包含文本、标记、表格、链接、输入控制、事件、任务、图像等元素,这些元素的有序组合构成了页面的主要业务逻辑。每张卡片都是相互独立的用户交互操作单元,卡片之间可以链接切换。当移动电话访问一个WML页面时,页面的所有卡片都会从WAP服务器下载到设备里,卡片之间的切换由内置的计算机处理,不需要再到服务器上取信息。
2 学习平台总体设计
根据一般用户的学习习惯与需求,方便用户随时随地进行学习,这里所设计的移动学习平台分为两种学习模式,即在线学习模式和离线学习模式。在线学习模式主要包括课程资源的下载、课程作业的上传、实时答疑及课程讨论等功能模块。离线学习主要包括学习者根据自己的学习情况制定学习计划,进行课程相关的课件学习、学习记录统计和课后测试等。在线学习需要登录到服务器后才能进行,而离线学习只需要本地资源。
3 系统实现
在实际的系统开发中,以Red Hat Enterprise Linux 5为平台,以Apache Tomcat 5.5为WAP服务器,采用JSP和WML相结合的方式,按照MVC2模式进行各个模块的设计和实现。系统的后台数据库选择可跨平台的MySQL,采用JDBC方式,在对数据库的操作上通过建立一个ConnectionManager类来提供对数据库的连接,然后通过DAO模式来调用。MVC2具体是指使用JSP+Servlet+JavaBean技术方案:Model层实现系统的业务逻辑,这里使用DAO模式封装对数据的操作;View层用于与用户的界面交互,采用JSP,wML结合实现;Controller层是Model层与View层间的纽带,使用Servlet来完成有效控制。
WAP页面不同于普通Web页面,如果要在电脑终端上测试和浏览JSP实现的WAP应用,除安装Java虚拟机(JRE)外还需要安装支持WAP的浏览器(即手机模拟器)。目前,常用的WAP浏览器中,M3gate测试的最为严格和标准,因此本文采用此软件进行测试。
4 系统开发中的问题及解决方法
(1)系统发布
若要将WAP应用发布至外网,必须将代码应用到服务器平台上。为使Apache服务器能提供完整的WAP服务,需要将WAP的五种MIME类型添加到Apache服务器的主配置文件中。首先,使用命令"vi/etc/httpd/conf/httpd.conf"编辑Apache的主配置文件httpd.conf。然后,定位到AddType区域,按a进入插入模式,以"AddType text/vnd.WAP.wml"格式将五种MIME类型添加进主配置文件,保持退出。最后,使用命令"/etc/init.d/httpd restart"重新启动Apache服务即可。
(2)中文编码
采用:M3gate浏览WAP页面时,有时会出现汉字为乱码的情况。这是由于系统编码问题造成的,WML的缺省编码是UTF-8,而汉字用的是GB2312编码。要正常显示,需要将GB2312编码转换为UTF-8。在系统中,通过Java编写的字符转换类来实现。首先输出UTF-8中汉字编码的前缀"",再通过字符转换工具输出汉字所对应的16进制码,最后再输出字符串结束标记";"。
(3)移动设备本身的局限
移动设备往往存在屏幕小、内存不大、显示内容有限的问题,因此,在页面的设计中必须添加方便、快捷的返回链接,避免使用复杂的页面布局元素。考虑到不同厂商不同型号的移动终端的差异性,要采用多种终端设备进行测试,保证WAP页面浏览时的通用性。
(4)费用控制
移动设备通过WAP方式访问通常需要支付流量费,为了减少流量,避免给用户产生昂贵的通讯费,在WAP页面中显示的内容应该力求简短。WML文件也应尽量简短,一般控制在2 KB以内。
- Wi-Fi下一个“n”标准值得期待(10-16)
- 空中下载技术的特点及其实现方式(01-09)
- WAP移动网络关键技术(01-11)
- 3G中的A-GPS移动定位技术(02-28)
- 蓝牙及其相近无线传输技术(04-10)
- J2ME和WAP运维方式的优缺点比较(07-16)