基于Android 系统的英语听、说自主学习软件的设计与实现

2015-11-25 02:59:40鲜学丰陈天乐
计算机与现代化 2015年12期
关键词:客户端听力口语

孙 逊,鲜学丰,陈天乐,王 敏

(1.苏州市职业大学计算机工程学院,江苏 苏州 215104;2.江苏省现代企业信息化应用支撑软件工程技术研发中心,江苏 苏州 215104)

0 引言

全球化的进程使得我们已经进了一个全民学习英语的时代,中国人学习英语面临“哑巴英语”的窘境,听不懂同时也说不出来。在20 世纪90 年代用户主要使用复读机和录音机练习听力,到了21 世纪初用户可以在个人电脑上练习听力和口语。

2007 年11 月,由谷歌公司牵头开发的手机联盟(Open Handset Alliance)发布了Android 手机操作系统,Android 是一个基于Linux 平台的开源手机操作系统[1]。Android 系统凭借着其强大的功能、易于操作、开源等特点使得越来越多的用户使用,据艾媒咨询数据显示,2012 年Android 系统在中国智能手机市场达到68.6%的份额[2],这为用户使用Android 手机进行移动英语学习带来了可能。

目前市场上基于Android 系统的移动英语学习系统非常丰富,功能各不相同。王凌燕等人[3]开发的英语语法学习系统是利用手机进行英语语法的学习。周少波[4]的英语词汇学习系统可以进行词汇学习。黄艺锋等人[5]利用Android 系统实现了电子词典的功能。孙丹等人[6]在Android 系统上开发的学习软件主要包括实用英语、休闲娱乐和交流互动等功能,使用户在娱乐中进行英语学习,给英语学习添加了趣味性。王凌燕等人[7]开发的英语口语移动学习平台利用Google 的语音识别组件对用户所讲口语进行测评,丰富了用户练习口语的方式。程建明等人[8]利用语音识别技术对用户单词发音做出评价和打分。文献[9-12]分别对Android 系统在阅读训练、词汇学习等方面进行了探索和实践。上述移动英语学习软件主要针对语法、词汇、阅读和口语等英语学习,目前这些软件大都存在功能不完善。例如:没有涉及音频文件的复读和字幕匹配等软件基本功能,听力训练效果不理想;口语识别和口语匹配功能性能不佳,且很少有文献对如何利用语音识别到的口语进行评判做详细的论述。另外,许多软件也存在界面设计不合理和操控性能不佳的问题。

本文针对目前移动英语学习软件存在的问题,设计和实现了一套基于Android 系统的英语听、说自主学习软件。该软件除了现有软件常规音频文件播放等常规功能外,还实现了音频文件的复读和字幕匹配、口语识别和口语匹配等,扩展了现有软件的功能。为便于用户操控软件,开发了锁屏控制、分组管理等实用功能,有效地提高用户的体验度。该软件有效地避免目前相关软件的不足,为用户练习英语听力和口语提供了新的便捷途径。

1 系统需求与设计

1.1 系统需求分析

1.1.1 功能需求

根据现有软件移动英语学习软件存在的不足和用户的需求,从英语听、说自主学习软件的听力训练、口语训练和设置3 个方面分析功能需求。

1)听力训练。听力训练应具有普通音频播放器“播放/暂停”、“快进/快退”、“上一曲/下一曲”等常规功能外,还需要包括听力材料复读功能,用户在精听训练时通过复读功能可以对听力材料的某一段进行反复播放。在听力训练时,Android 系统会在一段时间后进入屏保待机状态,为能够在手机解锁状态可以操控英语听、说学习软件,这里需要给系统增加锁屏控制功能,使用户在锁屏状态也可操控学习软件。为方便用户对不同来源听力音频文件进行归类,软件需要增加添加分组、编辑分组、删除分组和导入文件等功能来实现听力音频文件的分类管理。

2)口语训练。用户可以对自己所讲的英语进行录音保存,可以回放和复读操作,同时软件能根据用户的口语内容自动识别,判断用户所讲口语内容与听力材料的匹配程度,并能把匹配结果反馈给用户。

3)系统设置。为丰富用户操控体验,需要将多个系统参数设置成动态可调。系统可以设置的参数包括:允许线控设置、锁屏控制设置、快进秒数设置、快退秒数设置、播放模式设置、我的口语保存目录设置。

1.1.2 用户体验需求

一款优秀的Android 应用除了应具有强大功能外,还应具有良好的用户体验。

1)友好的用户界面。用户界面作为系统直接和用户接触,用户界面友好与否直接影响用户使用系统的使用效率,糟糕的用户界面会让用户对系统产生厌恶感。

2)快速的响应。快速的响应是指用户在操控系统时必须具有快速的响应,本软件中的复读功能尤其对系统响应时间要求较高,程序的状态转换应连贯流畅[13]。

3)良好的操控性。现今移动应用种类丰富,实现同一功能的移动应用能达到3 款以上,针对这一情况,只有使移动应用更易用、更易操控才能吸引用户兴趣。

1.2 模块设计

根据1.1 节的需求分析,将英语听、说自主学习软件分成客户端和服务器端2 大部分,具体功能模块如图1 所示。

图1 系统功能模块

1)客户端。英语听、说自主学习软件客户端是基于Android 系统开发,客户端分为听力训练、口语训练、资源下载和系统设置4 个模块。其中听力训练是系统的核心模块,该模块如图2 所示,听力训练中的复读功能采用AB 复读实现,听力材料在播放时,单击AB 复读键记录听力材料复读起始位置,当精听材料段结束时只需再次单击AB 复读键即可实现循环复读功能,切换正常播放模式可单击AB 复读键。

图2 听力训练模块

2)服务器端。英语听、说自主学习软件服务器端主要负责为Android 客户端提供听力和口语训练素材,实现在客户端对听力和口语素材请求时准确快速地响应[14]。服务器端分为资源分组管理和资源管理模块。资源分组模块是管理整个资源库分类;资源管理模块可上传、修改、删除英语学习资源,管理员可在后台服务器端进行资源分组对资源进行管理。

1.3 客户端界面设计

根据1.2 节功能模块的设计,本节主要是对客户端界面进行设计,系统界面结构如图3 所示。

图3 界面结构图

进入系统分为听力、口语、资源和设置4 个主界面,其分别是听力训练、口语训练、资源库和设置功能模块的实现界面,4 个界面通过Android 中的Tab 组件进行切换。软件中所有界面在Android 系统进入屏保程序时自动切换到锁屏控制界面。

2 系统实现

2.1 听力训练功能实现

音频文件播放功能是利用Android 系统的MediaPlayer 组件实现的。MediaPlayer 是基于OpenCore底层库实现而成,可以实现Audio 和Video 播放功能。在听力训练功能中听力材料复读功能是该软件的特色之一,用户在精听训练时可以通过复读功能对听力材料的某一段进行反复播放,为这项典型的听力训练方式提供了有效的解决方式。AB 复读是利用MediaPlayer 组件的SeekTo 方法实现,通过设置Seek-To 的参数指定音频文件的起始播放时间。快进(退)也是利用SeekTo 方法实现,通过在当前播放时间加上(减去)快进(快退)秒数来定位新的播放时间和功能,听力训练界面如图4 和图5 所示。

图4 听力训练主界面

图5 播放主界面

2.2 口语训练功能实现

口语训练功能主要包括口语录制和口语匹配2大功能,口语录制时通过手机话筒对用户所讲的口语进行录制保存,口语匹配是根据用户所讲口语和LRC中的口语进行匹配,并把匹配结果反馈给用户。

口语录制是利用MediaRecord 组件实现,首先创建一个MediaRecord 对象,然后通过MediaRecord 对象的setAudioSource、setOutputFormat、setAudioEncoder和setOutputFile 方法设置MediaRecord 对象属性,最后执行prepare 和start 方法即可以录音。

口语匹配模块采用情景对话的形式,资源库预置了机场登机、宾馆入住等不同情景模式。首先由用户选择一种口语情景,再由软件根据用户所选情景进行自动发音,然后用户对系统的发音进行应答,系统则对用户所讲口语进行识别和匹配。口语识别功能是调用Google 语音识别的API 接口实现[15],客户端手机首先设置网络连接(GPRS 或Wifi),然后调用Google 语音识别API 接口,Google 语音识别服务识别后,调用响应回调函数,返回用户口语对应的字符串。

为能正确地对用户口语进行评判,本文采用LRC字幕和口语识别结果进行匹配的方式,LRC 是英文Lyric 的缩写,是一种以标签形式记录歌词的纯文本格式,系统口语训练模块LRC 文件中包含了用户口语的正确内容,在系统语音识别后将识别到的字符串同正确字符串进行匹配,并将匹配结果反馈给用户。

口语匹配功能图如图6 所示,关键代码如下:

图6 口语匹配截图

图7 锁屏控制界面

2.3 资源库功能实现

资源库功能服务器端采用ASP.NET 框架,客户端和服务器端通信WebService 协议,使用WebService协议可降低系统的复杂性,保证系统的灵活性、健壮性和可维护性[16]。因为客户端采用Android 系统,而Android 系统上没有相应的WebService 库,因此在Android 系统上需要引入第三方软件包ksoap2 -android -assembly -2.6.5 -jar -with -dependencies.jar。通过该软件包即可实现WebService 的访问[17]。

2.4 锁屏控制功能实现

锁屏控制是在系统进入屏保状态时打开的界面,锁屏控制界面是普通的Activity 显示,启动锁屏控制Activity 是通过Service 对象和Broadcast 实现,Service后台不断侦听屏幕变暗和变亮事件,屏幕变暗和变亮则通过Broadcast 启动锁屏Activity,锁屏控制图如图7 所示,关键代码如下:

3 结束语

移动技术的发展为英语学习提供了新的途径,本文基于目前流行的操作系统Android 开发了英语听、说自主学习软件,软件主要实现了听力训练和口语训练2 大功能,其中听力训练中的复读功能和口语训练中的口语匹配功能是本软件核心功能,为便于用户操控软件,开发了锁屏控制、分组管理等实用功能。本软件的开发为用户练习英语听力和口语提供了新的便捷途径。

[1]黄婧,张林,季刊,等.基于Android 平台的GPRS 流量统计系统[J].计算机系统应用,2011,20(12):141-143.

[2]郦丽华,秦学礼.智能手机操作系统的发展与分析[J].计算机教育,2014(6):70-74.

[3]王凌燕,吴华,王丽燕.基于Android 的英语语法移动学习系统设计与实现[J].计算机与现代化,2013(8):232-235.

[4]周少波.基于Android 平台的英语词汇学习工具设计与实现[J].电脑编程技巧与维护,2014(24):80-80.

[5]黄艺锋,闫巧.基于Android 平台电子词典的设计与实现[J].计算机应用,2011(31):228-232.

[6]孙丹,何骅.基于Android 的应用英语移动学习软件的设计与实现[J].计算机时代,2014(11):24-26.

[7]王凌燕,张仕东,王丽燕.基于Android 的英语口语移动学习平台的设计与实现[J].陕西科技大学学报,2012(5):146-150.

[8]程建明,谢征,赵一权,等.基于语音识别技术的英语口语学习平台的开发[J].中国现代教育装备,2014(19):14-16.

[9]刁萌.基于Android 平台的大学英语听力学习系统的设计与实现[D].西安:陕西师范大学,2013.

[10]韩秋玲.基于Android 的英语学习系统设计与实现[D].成都:电子科技大学,2012.

[11]张卫芬,管文强,刘培梅,等.基于Android 平台和云计算的电子词典[J].计算机系统应用,2015(2):108-111.

[12]袁航.基于Android 平台的大学英语阅读应用的设计与开发[D].昆明:云南师范大学,2014.

[13]周恩,李文军,郑永军,等.Android 平台的智能家居控制系统设计[J].中国计量学院学报,2013,24(3):261-265.

[14]熊志刚.移动学习及其资源设计研究[D].上海:华东师范大学,2005.

[15]梁昌银,周丽娴,汝荣.Google 语音识别技术的研究与开发[J].现代电信科技,2013(9):39-44.

[16]刘壮业,姚郑.基于Web 服务的教师管理系统的设计与实现[J].中国科学院研究生院学报,2009,26(1):127-130.

[17]俞坤游,陈益民,骆德汉,等.基于Android 平台的医护查房系统的研究与设计[J].电子技术应用,2013,39(10):127-129.

猜你喜欢
客户端听力口语
酒中的口语诗
文苑(2018年22期)2018-11-19 02:54:18
县级台在突发事件报道中如何应用手机客户端
传媒评论(2018年4期)2018-06-27 08:20:24
孵化垂直频道:新闻客户端新策略
传媒评论(2018年4期)2018-06-27 08:20:16
基于Vanconnect的智能家居瘦客户端的设计与实现
电子测试(2018年10期)2018-06-26 05:53:34
Units 1—2 听力练习
Units 3—4 听力练习
Units 5—6 听力练习
Units 7—8 听力练习
提高口语Level 让你语出惊人
学生天地(2017年10期)2017-05-17 05:50:44
口语对对碰