王文广,群 诺,普次仁,张 婧
(西藏大学藏文信息技术研究中心,西藏 拉萨 85000)
基于Android的藏汉双语党课培训软件设计与实现*
王文广,群 诺,普次仁,张 婧
(西藏大学藏文信息技术研究中心,西藏 拉萨 85000)
基于Android平台的藏汉双语党课培训客户端是一款实用型软件,打破了西藏地区党课培训效率不高、且没有藏语版的党课学习软件的现状。通过藏文信息处理技术在移动智能终端的应用,解决了藏文字库导入、数据库中藏文检索、藏文在Android6.0以下版本的显示和藏汉切换等问题。本软件为了最大限度降低模块间的藕合度,多采用了数据耦合,提高了软件的可维护性,实现了党课基础知识、智能课堂、习题练习、模拟考试、专用词典和聚焦藏史等六个功能模块。
Android平台;藏汉双语;藏文检索;党课培训软件
结合目前各种便捷式智能设备普及的社会大环境,研究开发基于Android平台的藏汉双语党课培训软件,其能够促进西藏地区党课线上开放式教学的发展,为藏汉同胞系统地学习党的先进思想和深厚理论提供便利,同时可以帮助学员学习、复习相关内容,并测验其对知识的掌握程度。
当前比较完善的基于移动终端的党课培训客户端有“大学生党课培训系统”[1],类似培训平台都仅针对各地大学生,且版本均为汉语或汉英双语,而针对学生及其他社会成员并且可以实现汉、藏双语培训的平台目前还没有人开发。我们开发了藏文与汉文互译、面向西藏地区大学生及其他人员的党课培训APP——藏汉双语党课培训客户端,这个软件对完善藏文信息处理[2]在移动终端上的研究和使用具有重要意义。
⑴ Android系统中的藏文流畅处理:比如研究Android6.0以下版本的藏文显示和输入、藏汉互译。
⑵ 实现课题中的藏汉切换,完善藏文信息处理在移动终端上的研究和使用。
⑶ 实现准确查找词语和数据库藏文检索的功能。
我们做了大量市场调研和用户需求分析,除了实现藏汉双语外,还确定了主要功能模块:党课基础知识、智能课堂、习题练习、模拟考试、专用词典和聚焦藏史等六个模块,如图1所示。其中党课基础知识是让用户学习基本理论;智能课堂实现了通过视频自主学习;习题练习和模拟考试模块提供让用户自我测试的平台;专用词典是一个辅助学习工具;聚焦藏史为用户提供课外阅读材料。
图1 软件功能模块图
在Android中实现藏汉切换,首先要解决在Android端显示藏文的问题,虽然Android6.0已经支持藏文的显示,但还是有一部分用户使用6.0版本以下的Android系统,考虑到这个情况,我们还是写一个设置藏文字体的工具类SetTypeface对view控件自定义字体为himalaya.ttf。
主要实现代码如下:
在登陆界面点击RadioButton控件来切换藏汉语言,通过监听这个控件,如果第一个RadioButton控件被点击则设置语言为汉语language=1同时调用SharedPreferencesUtils工具类用来保存这个数据到手机中,反之第二个RadioButton控件被点击语言为藏语language=2同时也调用SharedPreferencesUtils工具类把数据写入到手机中。软件中每个activity都继承一个 BaseActivity,而 BaseActivity通过 SharedPreferencesUtils.getParam方法可以获取language的值,这样每个界面都一个判断当language=1设置语言为汉语,language=2设置语言为藏语。
主要代码如下:
本软件采用Android内置的SQlite数据库[3-4]进行创建,数据库名称为study.db,存放在了对应的工程的databases目录下,数据库内的表有用来存储选择题的question、用来存储党史单词的danciDepot。表的信息存储结构略。
⑴ 选择题库表question(answer_A,answer_B,answer_C,answer_D,problem_name,answer,id)。
⑵单词库表danciDepot(_id,zwtibetm,zwchinesem)。
用户界面设计的一个重要原则是用户应该总是感觉在控制软件而不是被软件控制。操作上,用户应扮演主动角色,而不是扮演被动角色[5-6],该界面采用线性垂直布局,划分了三大区域块,分别为:头导航区域用于用户注册和程序功能的扩展、图片的轮播区域用于展现近期的公告等、功能模块区域用于展示软件主要功能。主要代码如下:
本软件中习题练习和模拟考试中都有选择题,而习题练习模块又划分为几个小模块:顺序练习、随机练习和章节练习。顺序练习是调取数据库储存的题的顺序,随机练习的实现采用一个方法random.nextInt(questions.size())。选择题的界面设计,先采用一个TextView控件来显示从数据库获取的题干,在Text-View下方用一组RadioGroup单选框,每个选项由一个RadioButton单选框和一个TextView文本框水平布局,并为这每一个选项的RadioButton单选框分别赋值为1、2、3、4,TextView文本框显示从数据库获取的每个选项的文本。完成布局后开始实现点击事件,为RadioButton添加一个选中改变状态OnCheckedChangeListener的事件,通过比较单选框的值是否与已获取数据库正确答案的相等,若相等,则在调用Toast显示"恭喜您,答对了!"。若不相等,则设置Toast显示"很抱歉,答错了,正确答案是:"并显示出正确答案。
专用词典实现了有关党课学习的名词和术语的藏汉互译。一个词典实现双语互译必须要有大量的词汇做支持,因此从外部导入的数据库中加入了1253个词汇。词典的实现,首先获取用户输入文字,调用isChinese方法判断获取的文字是汉语还是藏语,然后用db.isOpen打开数据库,做相应的查询。对于数据库操作,Android提供了SQLiteOpenHelper类,可以很好地管理SQLite数据库的增删查改等操作,这里采用其中的一个方法queryItem做查询。主要代码如下所示:
我们打开应用,进入引导页面,该页面调用的是FirstActivity类,若为首次进入该应用,则调用该类,进入引导页面;否则,不调用该类,进入应用主界面,为了测试android6.0以下机型的藏汉切换,采用华为荣耀6进行真机的调试和项目展示,基本上符合预期开发效果,由于项目中有太多的界面,这里对主要功能进行展示。
软件藏汉切换实现的效果如图2所示,当用户首次进入软件默认的是汉语,可在登陆界面上切换语言。
选择题及专用词典模块实现的效果如图3所示,进行练习学习时,用户做错后会提示正确的结果,当用户学习中遇见一些不懂的专用术语和名词时可以查询软件中专用的小词典。
图2 软件藏汉切换实现的效果
图3 选择题及专用词典模块实现的效果
该研究课题是为了探索藏文信息处理在Android移动智能终端的应用,“双语党课”这款应用基本上实现了将传统的党课教育向智能终端的移植,同时也满足了藏汉同胞对党课学习的需求。本文简要介绍了该软件实现的构架和一些技术关键点,由于时间仓促及自身知识有限,软件做的尚有一些不足之处,以后会接着在以下三个问题上进行研究和改善。
⑴ 在词典模块,增加语音搜索功能,使人机有更好的交互。
⑵ 实现联网,让智能课堂的视频从服务器获取,以便其更新。
⑶ 实现自定义装载功能,来进一步扩展数据库。
[1]韦俊星,曾祥宝,黄美素,黄青逢.基于安卓系统的大学生党课培训系统客户端的设计与实现[J].中国新通信,2015.11:116-117
[2]陈玉忠,俞士汶.藏文信息处理技术的研究现状与展望[J].中国藏学,2003.4:97-107
[3]李刚.疯狂Android讲义[M].电子工业出版社,2011.
[4]杨丰盛.Android技术内幕·系统卷[M].机械工业出版社,2011.
[5]朱晨.电子词典中文件系统的设计与实现[D].电子科技大学硕士学位论文,2013.
[6]杨岸.一种电子词典的设计与实现[D].华中科技大学硕士学位论文,2004.
Design and implementation of Android-based bilingual training software for lectures of the Party
Wang Wenguang,Qun Nuo,Pu Ciren,Zhang Jing
(The Research Center of Tibetan Information Technology,Tibet University,Lhasa,Tibet 850000,China)
The Android-based bilingual training software for the lectures of the Party is practical software,breaking the current status in Tibetan areas that the training efficiency of the lectures of the Party is low and there is no Tibetan version of learning software for the lectures of the Party.Through the application of Tibetan information processing technology in mobile intelligent terminal,the problems of Tibetan character import,database Tibetan retrieval,Tibetan character display in the lower versions of Android6.0,and the switch between Tibetan and Chinese are solved.In order to minimize the coupling between modules,the data coupling is adopted mostly,which increases the maintainability of the software,and six function modules,i.e.the basic knowledge of the lectures of the Party,intelligent class room,exercises,simulated test,special dictionary and"focus on Tibetan history"are realized.
Android platform;Tibetan-Chinese bilingual;Tibetan retrieval;training software for the lectures of the Party
TP311
A
1006-8228(2017)10-59-04
2017-07-31
西藏大学大学生创新性实验训练计划项目“基于Android平台藏汉双语党课培训的设计与实现”(2016QCX087);西藏大学“珠峰学者人才发展支持计划”项目
王文广(1995-),男,西藏拉萨人,本科在读,主要研究方向:自然语言处理,安卓应用开发。
10.16644/j.cnki.cn33-1094/tp.2017.10.018