基于Android的电子书包App

2022-05-30 14:51蒙海权刘娟陈晴怡陆忻怡李世峰
电脑知识与技术 2022年21期
关键词:Android系统移动端教育应用

蒙海权 刘娟 陈晴怡 陆忻怡 李世峰

摘要:基于Android系统设计一款教育类应用“电子书包”App软件,探讨了开发Android经常用到的开发架构和开发设计的流程。一个好的App应用不仅需要提供相应的功能,而且要有流畅的操作体验,App为用户提供电子教材PDF、电子笔记和学生常用工具等功能,为目标用户提供一个优秀的辅助学习应用。

关键词:Android系统;教育应用;移动端;电子教材

中图分类号:TP311      文献标识码:A

文章编号:1009-3044(2022)21-0084-03

开放科学(资源服务)标识码(OSID):

1 市场状况与开发问题

自2007年,苹果推出第一款iPhone,开创了移动计算的新时代。2007年11月5日,Android1.0版本随之发布。Android经过十多年的发展,在用户数量方面已一步步打败Windows Phone、iOS等移动端操作系统,成为互联网市场上最大份额的移动操作系统。各类应用也越来越多,越来越完善,各行各业也均有着对应的应用。据CNIC第48次发布的《中国互联网络发展状况统计报告》报道:截至2021年6月,我国国内市场上监测到的App数量为302万款,较2020年12月减少43万款App,下降12.5%。截至2021年6月,移动应用规模居前四位的App 分类占比达58.2%。其中,游戏类 App 数量最多,达到了72.9万款,占目前已上架市场应用全部AAP的24.1%,其次占比最多的为日常工具类,为15.4%,达到了46.5万款。电子商务类应用和社交即时通信类应用也分别达到了29.5万款和27.1万款,牢牢占据移动应用市场规模的第三位和第四位,占目前已上市的全部App比重9.8%和9.0%。Android平台作为移动端最大的操作系统,其生态完善,开发者和用户数量众多,市场份额也呈正增长。同时随着5G网络的诞生以及普及,得益于其低延迟的网络特性,云平台、云应用以及远程操控等也得以进一步发展,移动开发也受到了众多开发者的追捧[1]。

近年来,教育类App也是迅猛发展,涌现出了学习通、智慧树、慕课等一大批优秀教育类应用[2]。但能较为全面地提供课本电子教材的App却为数不多,对此,项目旨在开发一款提供高质量的电子教材App,并加入在学习中常用功能。

1.1 市场状况

报道的数据显示,截至2021年6月,我国网民规模为10.11亿人,互联网普及率达到71.6%,广大的网民规模为推动我国经济高质量发展、加速我国新型数字基础设施建设提供了强大的内在动力。人们花在手机上的时间越来越多,这意味着人们获取信息的渠道多来自移动设备,而传统传媒行业也在加快脚步,把纸质阅读媒体电子化,例如《人民日报》、新华社等都有自己的相应的公众号和媒体号,甚至拥有属于自己的新闻类应用App,供移动端用户阅读使用。截至2021年6月,中国有着3.3多亿年龄在29岁以内的网民。对于这3.3多亿的用户,教育类App有着巨大的市场,对于应用开发者来说,这也是一个机遇。Android应用开发项目有着高额的利润回报,同时也是一个高风险的项目,移动应用开发的风险有着各种各样的风险因素,常见的因素有应用开发完成后,却无人问津,以及开发资金超过了预算,造成项目停滞。而行业中的竞争也是加大了开发者的焦虑。总而言之,想要获得成功,就必须有创意。

1.2 移动开发面临的问题

移动应用开发所面临的问题有很多,主要集中在开发的过程,以及保证软件的安全方面[3]。

1)页面UI开发重复度大。如今中国拥有302万以上的App,安卓应用主要为手机用户服务,不同的安卓应用为用户提供的功能服务不同,但其应用UI布局却大致相同,所以当前UI开发重复率较高,想要设计出别具一格的UI,就得經长时间深思熟虑,而这也加长了软件开发周期,降低了应用开发效率。

2)应用要提供的功能较多,移动端安卓应用要提供数据存储,缓存,网络请求等,还要考虑软件后期的功能扩展需求,因此,Android应用的具体开发过程中需要考虑到方方面面,这也给开发者带来更多的工作量。

3)软件的推广难度大。从Android发布至2013年,主要是将PC端的应用功能搬到移动端上来,属于移动端的萌芽期。2013—2015年是移动端App的平台型应用时期,应用开始有属于移动端的特有功能,是移动端的成长期。2015年至今是属于移动端的红利期,诞生了微信、支付宝和抖音等拥有着超大流量的超级App,而新生App面临的问题就是发布运营,如何夹缝求生,杀出重围成了App运营的一大问题。

由此可看出,Android应用开发对于众多的开发人员来说,这是一个充满艰辛,极具挑战的领域。开发者可以借助各种工具来提升效率,完成这个任务,以谋求在市场中能够占据一席之地。同时也可以把烦琐重复的工作交给工具来完成。

2 相关技术

Android系统构架简介。Google开发人员封装了Android底层框架,供安卓程序开发人员使用,这些封装的框架可以帮助Android应用程序开发人员快速地完成对安卓手机应用程序的开发[4],除了官方提供的底层框架外,国内国外也出现了一大批优秀的基于Android应用的快速开发底层框架[5],这些优秀的Android快速开发框架大多数都是封装的原生SDK底层开发部分和完整的功能组合,这些框架的出现,降低了安卓应用开发的难度。常见的开发框架有OkHttp、volley、Afinal、xUtils。

Android的系统构架采用了分层的思想,从下往上依次为Linux内核,硬件抽象层(HAL),系统Native库和Android运行时环境,java框架层以及应用层共5层构架[6],其中每一层又都包含着大量的子模块、子系统。结构如图1所示。

1)Android应用程序层

安卓应用程序包含了所有的安卓应用程序,其中可以分为两部分应用程序,一部分是Android系统附带的安卓核心应用程序,如电话、相机等应用。另一部分是由安卓程序开发人员开发的第三方App,Android应用程序层也是人们在日常生活中使用手机接触到最多的一个层次。

2)应用程序框架层

它提供了大量可供开发人员使用的应用程序接口[7](Application Programming Interface,API),应用程序框架层集中了很多Android开发所需要的组件,其中最主要的就是Activities(活动)、Broadcast Receiver(广播接收器)、Services(服务)以及Content Providers(内容提供者)这四大组件。Android自带的很多核心应用也是使用这些API来完成的。应用程序框架层主要提供的组件如表1所示。

3)硬件抽象层

硬件抽象层处于应用程序框架层和Linux内核驱动层之间,用于将硬件抽象化,对内核驱动程序进行封装,向上提供接口,向下提供屏蔽具体实现细节。系统硬件抽象层包含多个库的模块,每一个模块都会为指定类型的硬件组件实现向上的接口,例如电话通信模块,WLAN网络通信模块。当程序应用框架层接口(API)要访问硬件设备时,安卓系统就会为该硬件组件加载库模块。

4)Linux内核层

安卓是基于Linux提供的核心系统服务,比如,进程的管理、内存的管理、网络堆栈、驱动的模型以及安全。除了标准的Linux内核外,Android还增加了内核的驱动程序,例如显示驱动、输入设备驱动、音频系统驱动、Binder(IPC)驱动、摄像头驱动[8]、WiFi驱动、蓝牙驱动和电源管理。

3 总体设计

3.1 开发设计原则

在开发过程中,遵循下列三个原则[9-10]:

1)可扩展性。在开发过程中,考虑到了App的可扩展性,在后续的版本中,或许会加入新的功能,为了避免加入新功能时需要对整个App都进行重新构造,因此,要遵守可扩展性的规则,尽最大限度将App各个模块之间的耦合性做到最小,以保证在有新需求的时候也可以快速方便进行相应的功能需求添加与改动。

2)稳定性原则。在代码开发的过程中注重代码的健壮性,保证App的高效、稳定,功能全面,给用户带来流畅的体验。

3)易操作性。除了高效稳定,美观的图标、简单易懂的操作界面也是吸引用户的一大亮点,因此,在设计UI之时,在保证UI美观的同时,图标也要通俗易懂,要让用户很容易理解不同的图标对应的功能。

3.2 系统主要功能设计

“电子书包”App的主要功能设计如图2所示,分为六大模块进行功能开发设计。

1)提供电子教材功能模块

在现已存在的互联网资源上,通过网络爬虫技术抓取互联网上的电子教材资源,经过后台工作人员的筛选,将内容复制到数据库制作索引。經过对电子教材的排版优化,最终在该功能页面上展示高质量的电子教材。在阅读页面,将以尽可能地还原真实课本的形式展现在用户面前,实现真实的翻页效果。设计了推荐书籍子模块,按照专业分类,用户选择专业后,会推荐该专业未来职业所需要学的课本。此外,还添加笔记功能,记录学生在电子教材上的点、画、写的原始笔迹,最后上传到服务器后端,供学生下次打开使用。

2)电子笔记本功能模块

笔记本功能需要用户先新建一个笔记本,笔记本既可以采用打印字字体,也可以采用用户手写字的原始笔迹,并且可以上传分享,其他用户可以在笔记广场子模块,看到上传后的其他用户的笔记,供学习借鉴,与他人共同进步。由于用户上传的笔记质量参差不齐,本项目软件设计了点赞机制,点赞越多展示排名越靠前,可以有效筛选鱼龙混杂的笔记。

3)电子学习工具功能模块

在电子学习功能模块,设计了多种学习常用到的工具,如科学计算器、面积计算器,体积计算器、尺子、量角器、公式定理书、软件快捷键汇合和学习闹钟等。

尺子、量角器,面积计算器,体积计算器通过手机的TOF摄像头获取数据,经过程序计算,返回结果输出在用户界面上。用户设定学习闹钟后,闹钟响时触发学习机制。只有用户通过学习才可解除闹钟,通过背若干单词,或者完成一些简单的题目,才可关闭闹钟。其间App监视用户的操作,用户进行解除操作时,闹钟会短暂关闭。若用户在一段时间内没有操作,闹钟会继续响。此目的在于解决一些用户闹钟响后,关了闹钟继续睡的习惯,通过短暂的学习达到头脑清醒的目的。

4)个人中心功能模块

个人中心功能模块包含用户登录子模块,包括用户注册、密码修改,以及个人信息、个人收藏、App的相关设置等子模块。

4 应用主要功能的界面

电子书包App根据功能需求将应用界面设计为4个主界面,分别为教材展示界面、笔记功能界面、工具箱界面、个人中心界面。

图3所展示的界面是教材展示界面。电子书包App的主要功能,对教材进行了封面展示,点击书面可以进行课本的预览,既可以在线阅读全书,也可以下载下来离线观看。在页面的顶部,有搜索以及扫码。两种寻找教材的方式,用户可以方便快捷地搜索到自己需要的电子教材。此外,对用户进行搜索次数最多的教材进行了排序,归纳在热门教材的功能模块中,并且展示前3名的热门教材,用户可以点击“更多”查看更多推荐教材。在课程分类功能模块中,按照用户所学的专业课程进行了教材的整理归纳,把该专业所需要学的教材归纳到一起,并且加入了该专业比较著名的非在校课程的教材。

图4所展示的界面是笔记功能界面。它是App主打的功能之一,笔记本功能模块。分为两个功能模块,第一个为用户自己创建的电子笔记本,用户在创建笔记本的时候,点击新建笔记,即可创建笔记。同时可以选择使用自己手写的笔迹或打印字字体,最后可以在具体笔记页面里上传自己的笔记,供其他用户使用观看,第二个为其他用户分享的笔记,这里展示了其他用户上传的笔记,用户可以点击进去观看、收藏以及评论。对于上传的笔记,把点赞前三名展示在首页当中,对于后续的工作,会加入按照专业来对上传的笔记分类归纳和展示的功能。

图5所展示的是工具箱界面。点击不同的工具图标则进入相应的工具,在尺子當中,首先获取用户的手机屏幕信息,包括分辨率、尺寸、比例等信息,根据尺寸和比例来算出用户电子设备屏幕的长宽。再根据这一信息来分配长度刻度表,最后把刻度表显示在屏幕上。

图6则是个人中心界面。上方显示的是用户的头像以及昵称,分别点击头像和昵称可以更改头像图片和昵称名称。下方显示的是一些功能按键,点击“我的教材”,进入用户下载过的电子教材,点击“我的收藏”,进入用户收藏的笔记,还有其他的一些功能。

5 结束语

随着目前教育电子化的进程不断进行,早在几年前的课堂上就已经应用多媒体教学设备进行教学。越来越多的课本也已经数字化,能提供电子教材的网站也有不少,但手机端的应用还比较少且功能较为单一。电子书包App为同学提供优质的电子教材,以及优秀笔记的分享平台,集合学生常用的工具,可以有效地为学生节省网上寻找电子教材的时间。为学生打造一个高品质、高效率的辅助学习应用。

参考文献:

[1] 刘鹏飞.电子书包的应用现状及建设建议[J].甘肃教育,2022(7):74-78.

[2] 刘丹,胡卫星,李玉斌,等.移动教育APP的研发现状与应用问题分析[J].电化教育研究,2016,37(8):47-52.

[3] 冀永欢.移动应用开发现状与前景[J].数字技术与应用,2022,40(4):164-166.

[4] 何红辉.Android开发进阶:从小工到专家[M].北京:人民邮电出版社,2016.

[5] 马永起,陈全根,程铮.基于Android的IETM平板阅读器设计[J].电脑与信息技术,2021,29(5):32-36.

[6] 周星锦,秦宇,吴秋新,等.Android框架层完整性度量方案[J].计算机系统应用,2019,28(8):1-9.

[7] 陈强.Android底层接口与驱动开发技术详解[M].2版.北京:中国铁道出版社,2015.

[8] 鲍美英,申晋祥.基于Android的智慧阅读APP的设计与实现[J].山西大同大学学报(自然科学版),2021,37(4):17-18,21.

[9] 王佩.关于软件开发过程的设计原则研究[J].电子测试,2017(11):133,105.

[10] 牛晓丽.计算机软件开发中的软件工程方法分析[J].电脑编程技巧与维护,2021(6):71-72,98.

【通联编辑:谢媛媛】

猜你喜欢
Android系统移动端教育应用
游戏教学法在幼儿教育中的应用
论微博在高校思想政治教育中的应用
试析小学语文教学中激励教育的应用