APP下载

基于智能手机Android系统的移动学习软件关键技术研究

2017-04-07全江涛汪敏

中国信息技术教育 2017年6期
关键词:客户端学习效果应用程序

全江涛+汪敏

随着互联网技术的发展,移动学习逐渐成为一种新的学习模式,智能手机则是这种模式的重要载体之一。那基于智能手机Android系统的移动学习软件有哪些关键性技术呢?笔者将从以下几个方面进行具体阐述。

● Android开发概述

1.Android系统框架

Android采用了软件分层和模块化架构,这个结构非常精巧而富有弹性。作为一个专门为移动设备打造的真正开放和完整的移动软件操作系统,它由Linux内核、资源库、应用执行环境、框架和应用软件等部分组成(如图1)。

(1)Linux Kernel(Linux内核)

作为一种操作系统内核,同时也作为硬件和软件之间的抽象层,Linux Kernel可以为应用程序隐藏具体硬件细节。这种层次化结构的好处是使用下层提供的服务能为上层提供统一服务,即当本层及其以下层发生了变化后,不会影响到上层。这样能保证在层次内有高内聚性,在层次间有低耦合性。

(2)Android Runtime(Android运行环境)

Android的应用程序和中间层都以Java实现,因此,和Java系统类似,Android运行环境也为Java应用程序的执行提供了Java运行环境,通常就是Java虚拟机。

(3)Library(资源库)

Android包含一个系统库的集合,基于执行效能的考虑,它们通常由C/C++语言编写,供Android系统的各个组件使用。

(4)Application(应用程序)

作为一个“开箱即用”的操作系统,它建造了许多流行的应用程序,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人、系统设置等。这些应用程序都是使用Java编程语言写的,唯一的区别就是它们是谷歌自己开发的。更加丰富的应用程序和功能还有待开发者进一步实现。

2.Android应用程序四大组件

Android系统的四大组件包括Activity、Service、Content Provider和Broadcast Receiver,它们是整个Android程序开发中最核心的部分。无论何时,Android系统中的一个请求都应由一个特定的组件来处理,系统会确保这个组件的应用程序正常运行。

(1)Activity

Activity是四大组件之首,是Android应用的视图层。一个Activity是一个可见的、可以与用户进行交互的界面。一般地,应用中的一个Activity应被标记为应用启动时第一个呈献给用户的额,就是所谓的“main”Activity。从某个Activity到另一个Activity是通过当前的Activity启动另一个Activity来实现的。

(2)Service

Service,用户是不可見的,它在系统的后台运行,每个Service都继承自Service类。例如,一个服务可以在后台播放音乐,也可以连接或者绑定到一个正在运行的Service,对于音乐service来说,其接口允许用户暂停、后退、停止和重新播放音乐。

(3)Broadcast Receiver

一个应用可以有任意多个Broadcast Receiver来对它所关心的广播进行监听并做出反应。Broadcast Receiver不显示在用户界面上,但它可以启动一个Activity来作为接收到信息的一种反应。Notification可以通过不同的方式获得用户的注意,如点亮闪光灯、震动、播放一个声音等。

(4)Content provider

Content provider是一个应用程序数据的组合,以方便其他应用访问其中的应用程序数据。一个Content Resolver可以和任何Content provider交流,虽然其中存在进程间通信的问题,但我们不用担心这些底层的细节,因为它们能很好地处理数据。

● 搭建和配置Android系统应用开发环境

1.下载并安装Java SDK

首先需要安装Java运行环境,也就是Java SDK。我们可以在Oracle的Java SE的下载页面上找到一个可执行的安装文件。为了避免麻烦,安装时可以完全采用默认的配置,系统会自动进行相关的配置。安装完成后需要校验一下Java环境是否配置正确,这时可以在Windows下运行Java version命令。如果一切正常,系统会显示当前安装java的版本号。

2.下载并安装Android SDK

有了JDK之后,就可以安装Android SDK了。在Android开发的官方网页(http://developer.android.com)可以下载到最新的SDK。下载完成后,我们可以将压缩包解压到前面规划好的c:\develop这个文件夹中,这样,解压后的android-sdk-windows文件夹将成为Android SDK的根目录(Home)。

3.下载并安装Eclipse

Eclipse是Java中最流行的开发工具,常被广泛应用于Java项目开发。现在,由于其对Android开发环境良好的支持和跨平台的特性,Eclipse已经成为Android开发环境的事实标准。

下载Eclipse后,我们会得到一个压缩文件,将其解压到Android开发目录中,生成一个Eclipse文件夹,然后打开此文件夹,运行其中的Eclipse.exe可执行文件。

4.配置和运行Eclipse

Eclipse是一个可以高度定制化的开发平台,每个开发者都可以按照自己的需求打造适合自己使用的Eclipse软件。所以我们建议在安装Eclipse后进行一些系统设置的工作。当然,用户也可以按照自己的需求来对Eclipse进行配置,如编辑器、快捷键等,这是一种个性化的配置,完全取决于开发者的喜好,这里不再赘述。

5.配置虚拟设备

运行Eclipse,点击Window-Android SDK and AVD Manager菜单项目,在出现Android SDK and AVD Manager对话框左侧,选择Virtual Devices,对话框会列出当前已配置好的虚拟设备。点击“new”可以增加一个虚拟设备。

6.应用测试

最后,我们可以创建一个Android应用程序来验证开发环境是否配置完成。这个测试的主要目的是看看整个Android运行环境是否工作正常,所以这一过程不需要编写或理解任何一行代码,按照流程操作就可以了。虽然模拟器启动的时间比较长,但在实际开发调试过程中我们不需要频繁地重新启动虚拟机,程序重新编译部署和运行也都可以在已经打开的模拟器上执行(如图2、图3)。

● 客户端设计

1.功能模块设计

根据用户需求,Android系统客户端可分为五个功能模块,分别是课程学习、学习计划、课程测试、休闲一刻和问题解析。

(1)课程学习模块设计

学习者可以根据自己的需要,在这个模块中选择适合自己的学习内容,同时既可以下载相关资料,也可以对课程的学习进度有所记录和提醒。

(2)学习计划模块设计

这一模块可以实现学习者的个性化学习,它依据学习者的特点进行设定,按照个人学习风格和速度自定步调,并能针对不同内容使学习者有不同的学习方式。

(3)课程测试模块设计

课程测试也是Android客户端上的重要模块,它不仅能对学习者的学习效果有一个直观的了解,还能监测学习者的薄弱环节,让其强化学习。

(4)休闲一刻模块设计

此模块通过引入游戏来激发学习者的学习兴趣,同时,它也能暂时缓解学习者的学习压力,使其更有效地进入下一阶段的学习。

(5)问题解析模块设计

在这一模块中,学习者如果在学习的过程中遇到问题,可以随时随地进行咨询,或通过移动网络进行搜索,以便及时解决问题。

在实现以上模块时,有些时候Android应用有一些初始化的配置信息、应用相关的数据资源需要保存,一般使用XML文件来保存它们,这些资源被称为原始XML资源。为了在Java程序中获取实际的XML文档,我们可以通过Resources的两个方法来获取:①XmlResourceParser getXml(int id)。获取XML文档,并使用一个XmlPullParser来解析该XML文档。②InputStream openRawResource(int id)。获取XML文档对应的输入流。

2.操作流程设计

我们以大学英语学习为例,具体了解一下Android系统客户端词汇学习的操作流程设计(如上页图4)。

(1)客户端学习主页界面

首先学习者要打开学习软件,进入词汇学习主页,对所要学习的模块进行选择,学习者可以根据自己的学习特点和个人需求进行自由选择。

(2)客户端登录界面

学习者在开始学习之前,要注册自己的信息,只有注册成功之后才可以进入词汇学习模块。

(3)学习模块界面

在学习模块界面,学习者可以选择自己想学习的内容进行学习,这样就进入到词汇课程选择步骤,学习者可以根据个人爱好选择学习模块和不同的交互方式。

(4)词汇课程选择界面

在词汇课程选择界面,学习者可以选择语言种类,以便更好地进行词汇学习。

(5)学习计划界面

学习计划模块不仅可以帮助学生实现自定步调按照计划进行学习,还可以实现时间提醒设置,由于词汇学习是一种偏于记忆类的学习,且人的记忆会遵循一定的规律,只有按照合理的记忆规律进行学习,才会起到事半功倍的效果。因此,这一模块能及时提醒学习者在合理的时间内进行有效复习。

(6)学习状态界面

此模块可以帮助学习者记录哪些内容已经学过,学了多少,这样有助于学习者更清楚地了解自己的学习进度,节省学习时间,提高学习效率。

(7)内容测试界面

此模块针对学习者的学习效果进行测试,这样便于学习者更及时地了解学习效果,把握学习状况。

(8)测试结果界面

测试结果界面既可以实现对学习者进行客观评价的功能,还可以对其尚未掌握的内容有一个更详细的反馈。

(9)问题解析界面

在这个界面中,学习者如果在学习的过程中遇到难以解决的问题,可以进行咨询,也可以在线查阅资料,以便在第一时间解决问题。

(10)论坛界面

此界面通过Android客户端直接调用外部浏览器显示,学习者之间可以进行交流和讨论,分享学习经验,交流学习体会。

(11)休闲一刻界面

此界面中的导入游戏软件,能让学习者在学习之余有更多的选择余地,更好地調节学习氛围,以便学习者更轻松地进行学习。

● 智能手机移动学习软件的设计原则

为了更好地发挥智能手机移动学习的优势,笔者通过对以上内容的分析,总结出了智能手机移动学习的几个设计原则,具体如下。

1.适合原则

移动学习软件的设计要明确针对的服务群体是谁,他们有什么样的学习特点,又有什么样的学习需求,需要为他们提供什么样的学习内容,这些都是在设计移动学习软件之前所要解决的问题。只有对这些方面进行彻底的了解后,才能针对不同学习者的需求设计出适合学习者学习的软件。对于使用智能手机进行移动学习的学习者来说,学习时间的不确定性、学习地点的移动性,都会使他们的学习过程受到外界环境的干扰。因此,在智能手机移动学习软件的设计开发过程中,一定要兼顾学习者的学习特点,坚持适合的原则进行有针对性的设计。

2.开放性原则

智能手机移动学习软件的设计要采用开放性的思维方式,对教学媒体的使用、学习内容的组织、学习模块的设计等都要注重开放性,使学生突破定向思维的限制,不再局限于书本上的知识。在当今知识大爆炸的时代,知识的来源非常广泛,仅仅掌握书本上的知识是远远不够的,只有通过不同的学习方式、不同的学习渠道以及更丰富的知识来源来拓宽学习内容,本着开放性的原则进行学习才会取得事半功倍的学习效果。另外,学习者可以通过采用交互学习、发现学习等多种学习方式,扩宽思路,实现开放性思维的互相碰撞,由此激发学习兴趣和学习积极性,不断提高创新能力和创新意识。

3.模块单元短小精悍原则

在移动学习的过程中,学习者处于一个相对不是那么安静的环境中,学习过程很容易被周围的嘈杂因素所打断;同时,周围环境的光线、温度也会给学习者的学习心理造成不同程度的影响,使他们注意力集中的时间也相对较短。因此,在智能手机移动学习软件的开发过程中,一定要遵循短小精悍的原则,尽量开发一些较简短的学习模块。具体表现在:学习单元的时间一般控制在15分钟左右,这样学习者在学习一个单元时,所用的时间就比较短,并且注意力也比较集中。时间一长,学习者的注意力就会下降,进而影响学习效果。同时,每个学习单元之间的关联性不要太强,即这一单元的学习不会影响下一单元的学习效果。

4.教学目标量化原则

在学习者开始学习或正在发生学习的过程中,教师的控制因素较少,学习者完全依靠自觉来进行学习。因此,每个学习单元的教学目标一定要明确、合理,遵循“量化”原则。具体表现在:多使用一些具有针对性的小练习和小测试将目标量化,突出重点和难点,让学习者明确每个小单元所要掌握的内容是什么,应掌握到何种程度,其中需要重点掌握的又有哪些,并通过及时的测试,让学习者更清楚地认识到对各个知识点掌握的程度,以便进行更合理、有效的学习。

5.人性化设计原则

智能手机移动学习软件的设计要遵循学习者自身的特点,并依据他们的学习规律进行人性化的设计。具体表现在:遵循记忆规律,自行设定提醒时间,这样能达到事半功倍的学习效果。另外,在设计的过程中,我们可以结合智能手机的特点,增加一些休闲娱乐的模块,使学习者在学习之余能得到适当的休息,这种劳逸结合的学习方式更能体现出移动学习的有效性和趣味性。

参考文献:

[1]Sam Ruby,Dave Thomas.Agile Web Development with Rail,Third Edition[M].America:Pragmatic Bookshelf,2009:1-2.

[2]Aleksander Dyeetal.Mobile Edueation-AGlance at The Frture[DB/OL].http://www.nettskolen.com/forskning/mobile_education.pdf.

[3]李刚.疯狂Android讲义[M].北京:电子工业出版社,2012,1.

[4]颜建华.Android開发关键技术之旅[M].北京:中国铁道出版社,2012,7.

[5]薛显亮.解析Android SDK——智能手机开发范例手册[M].北京:中国铁道出版社,2012,9.

[6]Keegan D.The future of learning:From eLearning to mLearning[DB/OL].http://learning.ericsson.net/Leonardo/book.Html.

猜你喜欢

客户端学习效果应用程序
疫情期间线上学习效果评价分析
“百词斩”对于大学英语四级词汇学习效果的实证研究
基于学习性评价原则提高研究性学习效果的研究
删除Win10中自带的应用程序
莲心宝宝有话说
谷歌禁止加密货币应用程序
虚拟专用网络访问保护机制研究
新闻客户端差异化发展策略
三星电子将开设应用程序下载商店
微软软件商店开始接受应用程序