英语单词学习APP的设计与实现_第1页
英语单词学习APP的设计与实现_第2页
英语单词学习APP的设计与实现_第3页
英语单词学习APP的设计与实现_第4页
英语单词学习APP的设计与实现_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEV英语单词学习APP的设计与实现摘要随着中国国际化程度的提高,英语的普遍性和重要性日益凸显。英语作为一门语言,其基础是词汇,英文词汇量的扩充是提高英文水平的基础。学习者对英文词汇的学习包括遇到生词时的单词查询和有计划的词汇记忆。移动互联网时代的到来,尤其智能手机的广泛应用,英语学习的平台已经逐渐向计算机或者手机等移动设备上转移,背单词的方式方法进入一个新的领域。传统的英语学习是通过纸质文摘阅读的形式,随着现代生活节奏越来越快,人们的时间呈现碎片化,无法时刻带着英语相关书籍。另一方面,英语的学习成果无法实时展现。为支持学习者随时随地进行单词记忆的学习需求,本文对英文单词学习的移动学习设计进行了研究,并在无线通信技术和移动设备的支持下,设计开发基于android的英语单词学习APP,该系统通过互联网实现在线学习,任何时间,任何地点,只需要一部手机就可以完成英语的系统学习,并能够通过该系统进行考试模拟,及时发现学习中的问题。关键词:英语在线学习移动设备

AbstractWiththeimprovementofChina'sinternationalization,theuniversalityandimportanceofEnglishhavebecomeincreasinglyprominent.Asalanguage,Englishisbasedonvocabulary,andtheexpansionofEnglishvocabularyisthebasisforimprovingEnglish.Thelearner'slearningofEnglishvocabularyincludeswordqueryandplannedvocabularymemorywhenencounteringnewwords.WiththeadventofthemobileInternetera,especiallythewidespreaduseofsmartphones,Englishlearningplatformshavegraduallymovedtomobiledevicessuchascomputersormobilephones,andthewayofmemorizingwordshasenteredanewfield.TraditionalEnglishlearningisintheformofreadingpaperabstracts.Asthepaceofmodernlifeisgettingfasterandfaster,people'stimeisfragmentedandtheycannotalwayscarryEnglish-relatedbooks.Ontheotherhand,Englishlearningresultscannotbedisplayedinrealtime.Inordertosupportthelearningneedsoflearnersforwordmemoryanytimeandanywhere,thisarticlestudiesthemobilelearningdesignofEnglishwordlearning,andwiththesupportofwirelesscommunicationtechnologyandmobiledevices,designsanddevelopsanEnglishwordlearningAPPbasedonAndroidOnlinelearningcanbeachievedthroughtheInternet.Atanytimeandanyplace,onlyonemobilephoneisneededtocompletethesystematicstudyofEnglish,andthesystemcanbeusedtosimulateexamsanddiscoverproblemsintime.Keywords:EnglishOnlineLearningMobiledevices

目录绪论 11.1Android发展背景及趋势 11.2课题研究意义 21.3课题主要任务 2第1章总体分析 31.1需求分析 31.1.1技术可行性 31.1.2经济可行性 31.1.3实际可行性 41.1.4需解决问题 41.2本章小结 4第2章系统设计目标 52.1系统主要流程 52.2系统业务介绍 52.2.1查找单词 52.2.2浏览单词 62.2.3单词读音 62.2.4单元练习 62.2.5错题复习 62.2.6阶段测试 62.2.7分数排名 62.3本章小结 6第3章系统功能模块分析 73.1系统功能目的 73.2系统功能模块实现 73.2.1查找单词 73.2.2浏览单词 73.2.3单词读音 73.2.4单元测试 83.2.5阶段测试 83.2.6查看成绩 83.2.7成绩排名 83.2.8错题复习 83.2.9错题重测 83.2.10英语趣闻 84.3本章小结 9第4章系统的实现 104.1Android的定义和特色 104.1.1开放性 104.1.2挣脱运营商的束缚 114.1.3丰富的硬件选择 114.1.4不受任何限制的开发商 114.1.5无缝结合的Google应用 114.2Android架构图直观 114.3Android系统开发环境: 124.3.1JDK安装 124.3.2Eclipse安装 134.3.3AndroidSDK的安装 134.3.4ADT的安装 154.3.5创建AVD 164.6系统的主界面设计 174.6.1浏览单词 174.6.2单元测试 204.6.3错题重测 224.6.4英语趣闻 244.6本章小结 25第5章系统测试 265.1系统测试计划 265.1.1统测试环境 265.2系统测试过程及结果 265.2.1浏览单词 265.2.2单元测试 275.2.3错题重测 285.2.4英语趣闻 295.3系统测试结果 306.4本章小结 31参考文献 34[20]刘琴,张贤平。信息生态学视域下移动媒体信息安全的问责及治理[J].西南民族 34[21]周晓磊。CDIO教育理念下Android移动开发课程建设探索[J].价值工程,2017, 3436(33) 35[22]移动版阅读器下载说明[J].当代教育实践与教学研究,2017,(11) 35[23]孙晓芳。慕课环境下高职翻转课堂教学模式的应用--以“移动应用开发”课程为例[J].无线互联科技,2017,(22) 35[24]郑亚红.

无线传感器网络中的密钥管理方案研究[D].西北师范大学2014 35PAGE35绪论1.1Android发展背景及趋势Android以Linux为基础的操作系统,主要应用于移动,车载等便携设备。Android操作系统由AndyRubin主持开发,应用于智能手机,目前已经拓展到桌面系统,tv大屏,手环,腕表等各种领域。在中国最大的城市地区,Android智能手机在截至2016年4月的三个月中所占市场份额为78.8%(其中6.0份额提升迅猛),高于去年同期的74%;iOS所占份额为20.1%,低于去年同期的25.2%。移动开发软件可以说是想当地炽手可热,Android可以说是未来开发人员所喜欢的技术之一。那么下一个适合Android的屏幕是什么呢?就是汽车。天生的移动特性加上越来越多的互联网服务需求,使得车载系统跟Android有天然的契合点。Google这两年也确实在汽车领域发力了。从2016年开始,我们就看到AndroidNougat、Oreo的代码分支上也都有Car相关的代码在不断更新。CES2017和GoogleI/O2017上也有Audi、Volvo、FCA这样的车企展示了他们新的基于Android的车载信息娱乐系统的概念产品。Android系统的优势是交互体验、连接能力和拥有强大的开发者支持的生态环境。这一点对于车载的信息娱乐系统(IVI)来说是很重要的。但是车载系统并不仅仅是信息娱乐系统,还有其他很多子系统,也就是说车载系统不同于手机,会运行在一个更复杂的系统之中,而且对于系统的稳定性、实时性也有新的要求。这就要求Android作出很多改变,比如AndroidO的Automotive版本中就把Audio和Camera的处理从Java层移到了Native层,来实现快速启动的要求。此外,Android在汽车上还面临来自于Linux、QNX,甚至Windows等既有系统的挑战,作为一个后来者,怎么说服保守的车厂接受一个新的操作系统,比如如何解决安全性和稳定性的问题,也是Google需要解决的问题。作为一个Android的忠实用户和拥趸,我相信Android在汽车领域一定能够争得一席之地,但是我也觉得Android不可能做到像手机行业一样一枝独秀的地位,百花齐放还是最可能看到的情况。1.2课题研究意义目前用人单位非常关注求职者的英语水平,特别是外资企业,能够熟练的使用英语会为我们在激烈的职场竞争中增加一定的筹码。一口流利的外语会很加分,因此英语学习的重要性不言而喻。目前英语学习有两大弊端:1.传统的学习受地点限制,并且需要时刻带着纸质书籍。2.无法实时检测学习成功。为了解决上面的两大问题,我们开展了此次的课题研究。随着4G的到来与普及,移动互联网发展迅速,移动应用像雨后春笋般生长出来,各种各样的移动应用让人眼花缭乱,与此同时智能手机也跟着更新换代,强大的硬件支持,更好的支撑移动应用。广大的Android市场以及学习英语的重要使得基于Android平台的英语单词学习软件更有意义。如今智能手机已经普及,只需要安装英语单词学习APP,通过移动互联网技术,不论在任何地方,都可以立刻学习英语,而且系统还有各种关卡,动态调整每个人的单词学习任务,实时监测学习效果,移动应用能完美解决以上问题。鉴于此,基于Android平台的英语单词学习软件就有了较大的意义,可以更好地帮助有志学习的人更好地学习,而且可以不受时间和地点的影响。1.3课题主要任务随着中国的国际化越来越高,英语的重要性和普遍性日益凸显。英语作为一门语言,其基础是词汇,英文词汇量的扩充是提高英文水平的基础。不仅要完成词汇的学习,更重要的是可以实时检测自己的学习成功。完成一款英语单词学习APP,用户可以查找单词,浏览单词,单词读音,只需要一部只能手机,用户利用碎片化时间来随时随地的学习英语,同时我们的系统还设置有各种光卡,比如单元测试,阶段测试,动态调整每个人的单词学习任务,实时监测学习效果。并提供错题库,对错题循环复习,从而帮助学生轻松的完成英语课程的学习和提高个人的英语能力;同时还提供英语趣闻模块,大家都知道学习是个枯燥无味的过程,很多人都会在学习的半途中放弃,非常可惜。我们专门为枯燥的学习提供趣闻模块,用户学习累的时候,可以打开趣闻模块,查看英语相关的趣闻,适当的放松。通过英语单词学习APP,可以更快的提高英语能力,为将来在职场中取胜增添一定的筹码。第1章总体分析1.1需求分析完成一款英语单词学习APP,用户可以查找单词,浏览单词,单词读音,利用碎片化时间随时随地的学习英语,不用受时间,地点的影响,让想丰富自己知识的用户可以更好地学习英语。同时系统还有各种关卡,比如单元测试,阶段测试,动态调整每个人的单词学习任务,实时监测学习效果,达到一个镜子的作用,可以随时了解自己的学习情况。并提供错题库,对错题循环复习,在用户遇到难以学习的单词时,错题集的用处就体现出来了,用户出过错的单词可以在错题集中循环复习,以达到记忆的效果,从而帮助学生轻松的完成英语课程的学习和提高个人的英语能力。为将来在职场中取胜增添一定的筹码。1.1.1技术可行性随着Android平台及3G网络的普及,越来越多的需求与应用吸引着越来越多开发者的目光。Android是一个开放、自由的移动终端平台。随着4G的到来与普及,移动互联网技术不断地向前发展,越来越多的移动应用在人们的研究开发之下被制作出来,可以说到目前为止Android开发技术已经显得比较成熟了,同时社会上的智能手机也是更新换代,以日新月异的速度发展着,强大的硬件支持,更好的支撑移动应用。还有即将到来的5G时代,这是一个发展腾飞的时代。1.1.2经济可行性安卓是开放操作系统,我们可以定制出任意自己想要的移动应用供用户使用,经济上可行。而且开发所需要的成本并不是很高,只要装上相关的软件即可以自己完成整个开发过程。加上现在蓬勃发展的移动互联网,手机应用软件非常受大家欢迎。大量的app面世,并且点击下载率都有不俗的表现,这说明了开发手机app是大有前途的。因此,越来越多的开发人员投身到这个行业中,且获得了可观的经济收益。诸如大众点评,美食团等同类手机app也深受人们的欢迎。1.1.3实际可行性用户在手机客户端,通过英语单词学习APP,用户可以查找单词,浏览单词,单词读音,利用碎片化时间学习英语,同时我们的系统还设置有各种光卡,比如单元测试,阶段测试,动态调整每个人的单词学习任务,实时监测学习效果。并提供错题库,对错题循环复习,从而帮助学生轻松的完成英语课程的学习和提高个人的英语能力。尤其是在移动互联网的帮助下,手机app应用的范围可谓是更加地广泛。从时间上看,在两个月的时间里学习相关知识,并开发英语单词学习APP,虽然是有点紧迫,但并不至于无法实现,从零基础到Android入门,通过努力来完成功能应该基本上是可以实现的。1.1.4需解决问题有道开源框架接入;安卓开发技术掌握;英语单词录入。任何一个项目在开发实施之前,都需要进行详细的需求分析,分析该项目有市场这是开发项目之前必须要做的事情,也是一个软件开发工程师的义务;之后再从经济、技术和时间等可行性进行分析,这些具有决策性和方向性作用,决定着一个项目是否开发,这是必不可少的一个环节。1.2本章小结本章从各种现实角度分析项目项目的可行性,在技术,经济,实际意义和时间上进行了客观的分析。并且探讨了开发该项目需要解决的问题:商家信息收集,安卓技术储备,用户行为分析。这些都是在开发项目之前首先必须要考虑到的问题。第2章系统设计目标2.1系统主要流程本应用提供查找单词,浏览单词,单词读音的基础功能,利用碎片化时间学习英语,同时我们的系统还设置有各种光卡,比如单元测试,阶段测试,动态调整每个人的单词学习任务,实时监测学习效果。并提供错题库,对错题循环复习,从而帮助学生轻松的完成英语课程的学习和提高个人的英语能力。流程图如2.1所示:图2.1主要业务流程图2.2系统业务介绍2.2.1查找单词用户在学习模块的首页面,搜索框内输入单词,即可查找该单词对应的含义,点击声音按钮,即可朗读发音。2.2.2浏览单词用户在学习模块,可以按照单词首字母一次浏览单词,并且提供单词的英式和美式发音,中文解释,例句的展示。2.2.3单词读音在浏览单词时,可以点击朗读,系统则发出该单词的正确读音。2.2.4单元练习每个单元学习完后,可以进行该单元测试,错题自动进入错题集,并可以查看该单元成绩。2.2.5错题复习用户可以从本地数据库中,选择错题集,浏览错误单词,重点学习错误单词。2.2.6阶段测试用户可以选择期中,期末两种形式进行模拟考试,错题同样进入错题集,并可以查看考试成绩。2.2.7分数排名对于已经提交考试的学生,生成分数排名,这样可以看到自己跟周边同学的差距,当自己分数比较落后时,可以及时补习英语。2.3本章小结这里主要介绍了项目的主要流程,首先要根据需求分析所得到的情况,整理获取到的数据资料,规划出大概的框架。在这个框架的指导下进行详尽的规划。这里将英语单词学习APP分为学习,考试,错题集,发现四个主要模块,每个主模块中有有不同的子功能,根据不同的模块实现不同的功能。第3章系统功能模块分析3.1系统功能目的随着咱们中国国际化的提高,英语的重要性和普遍性日益凸显。英语作为一门语言,其基础是词汇,英文词汇量的扩充是提高英文水平的基础。完成一款英语单词学习APP,用户可以查找单词,浏览单词,单词读音,利用我们的碎片化时间学习英语,同时我们的系统还设置有各种光卡,比如单元测试,阶段测试,动态调整每个人的单词学习任务,实时监测学习效果。并提供错题库,对错题循环复习,从而帮助学生轻松的完成英语课程的学习和提高个人的英语能力。为将来在职场中取胜增添一定的筹码。3.2系统功能模块实现3.2.1查找单词用户点击查找单词后,当用户输入单词后,系统调用有道词典API,显示出该单词对应的解释内容,同时会有英语单词的例句,也会有例句的中文翻译,以方便用户对单词的记忆和学习。3.2.2浏览单词在APP上线前,会事先录入课本单词到APP本地数据库中,当用户选择浏览单词后,则会让用户选择对应年级,选择年级后,系统会从app本地找到该年级对应的单词,并逐个展示。3.2.3单词读音在浏览或者查找单词后,可以点击单词读音,通过调用有道词典API正确播放该单词读音,用户可以在通过听单词读音的过程中,学习并记忆单词。3.2.4单元测试每个单元会有单元测试,系统随机从该单元中抽选20个单词作为考试内容,答题错误后,该单词会自动记录到app本地数据库SQLite中,作为错题集的依据,解答完后,系统会实时显示本次的测试成绩和分数排名。3.2.5阶段测试跟单元测试类似,阶段测试关注的是期中或期末的测试,错题同样会进入错题集。3.2.6查看成绩每次考试结束后,系统自动计算成绩,用户可以查看考试成绩以知道自己的学习状况。3.2.7成绩排名每次考试结束后,系统按照成绩,由高到低排名,用户可以查看自己的考试排名。3.2.8错题复习用户在经过多轮测试后,错题集中会有大量错误的单词,这些数据记录在app本地数据库中。该数据库永远保存,除非用户卸载APP,当单词第一次错误时,直接插入到数据库中,并记录错误时间,当再次错误时,更新错误时间即可。当然错题集也有最大数量,初步考虑,错题集的错误单词,上线为100个。当出现第101个错词时,该错词覆盖时间最早的错词,依次类推,跟队列的原理类似,先进先出。3.2.9错题重测在错题复习结束,用户可以依据错题进行测试,系统从错题中挑选20个单词作为测试条件。用户可以在这里对自己之前出错的问题再次进行考核,如果再次出现错误,错题还会回滚进入错题集。3.2.10英语趣闻用户在学习比较疲劳时,可以通过发现功能查看一些英语趣闻,系统会预置一些英语趣闻的H5页面。有一些中英双语的名言警句,也有着一些其他的英语趣闻,这些内容相信会让学习疲劳的用户眼前一亮,在娱乐放松的同时也能进行学习。3.3本章小结这里简要地介绍了英语单词学习APP的设计理念,系统功能设计的目的,分成四个大模块。这里可以在线学习,考试,错题复习,浏览相关网页。四个模块的设计也是英语单词学习APP的难点。每个模块既是独立的,但也有相关联的地方。这是在接下来的设计所需要解决的问题。第4章系统的实现4.1Android的定义和特色安卓是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。Android操作系统最初由AndyRubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。4.1.1开放性在优势方面,Android平台最主要也是最关键的一点既是其开发性,开发的平台允许任何移动终端厂商加入到Android联盟中来。因为其显著的开放性,使得Android平台可以拥有更多的开发者,用户和应用日渐丰富,也使得Android平台这一个崭新的平台以极快的速度成熟起来。开放性对于Android的发展而言,不止是为其提供了更多的开发者,而且也为Android积攒了极高的人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源,在Android平台能找到各种各样的自己满意的应用软件。而且因为平台的开放性,平台也会有这更大的竞争,在平台的竞争中,消费者们就可以用更低的消费来获得更好的体验。4.1.2挣脱运营商的束缚在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从iPhone上市,Android运营知识专家表示它使用户的体验度大大提升,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。4.1.3丰富的硬件选择这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容。好比你从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。4.1.4不受任何限制的开发商Android平台提供给第三方开发商一个十分宽泛、自由的环境。因此不会受到各种条条框框的阻扰,可想而知,会有多少新颖别致的软件会诞生。但自由也是一把双刃剑,给了开发商开发的空间,虽然有着很多的新颖别致的学习软件,有着娱乐放松的软件,但也因为其两面性,也会有这血腥、暴力、情色方面的程序和游戏。如何控制这些程序和游戏正是留给Android难题之一。4.1.5无缝结合的Google应用如今叱诧互联网的Google已经走过10年度历史。从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。4.2Android架构图直观图4.2展示的是Android系统:图4.2Android系统架构从上图可以看到,Android的系统架构由下面的五个部分组成:LinuxKernel、Libraries、AndroidRuntime、Applications、ApplicationFramework。4.3Android系统开发环境:4.3.1JDK安装设置环境变量步骤如下:首先,需要选中“我的电脑”右击,之后找到“属性”,选择“高级”->“环境变量”,然后再为系统变量中添加以下的环境变量:JAVA_HOME值为:D:\ProgramFiles\Java\jdk1.6.0_18(你安装的JDK所在的目录)CLASSPATH值为:;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\bin;Path:%JAVA_HOME%\bin;提示一下:这里可以跳过前面四个步骤的设置环境变量。因为对于Android开发并不是完全必要的,它有时可以忽略。安装完毕之后。点击打开cmd,在弹出的窗口内敲入java–version的命令,这样做的目的为了要查看系统内JDK的版本信息,用来检查jdk是否成功安装。图4.3的提示信息则证明安装已经成功:图4.3JDK安装成功4.3.2Eclipse安装下载如图4.3.1所示的EclipseIDEforJavaDevelopers(92M)[18]的win32bit版:图4.3.1Eclipse下载解压之后即可使用。4.3.3AndroidSDK的安装目前android开发工具可以选择AndroidSutido或者Eclipse,这里主要介绍Eclipse的相关使用。在Android官网或者第三方正规网站下载android-sdk_r05-windows.zip[17],成功下载后,解压到特定目录;运行SDKSetup.exe,然后点击AvailablePackages。如果找不到可以安装的包,选中Settings,选择Misc的"Forcehttps://..."这个项,然后点击AvailablePackages即可;选择需要安装的SDK或者其它的包,点击InstallationSelected、AcceptAll、InstallAccepted,这样就开始下载安装所选包;我们还需要在我的电脑的设置里面新建PATH路径为:AndroidSDK包下面tools包的绝对路径(我的路径是D:\AndroidDevelop\android-sdk-windows\tools)。如下图4.3.2所示:图4.3.2设置环境变量配置完成后,选中“确定”后,需要重启电脑才能生效。重启电脑后,我们可以在dos窗口下验证安装是否成功。在dos窗口下,输入android–h,出现下图图3.3.3的输出信息,则表明安装已经成功:图4.3.3证明AndroidSDK已经安装成功4.3.4ADT的安装1)我们选择Eclipse的IDE,选中菜单中的"Help",然后选择"InstallNewSoftware"。2)选中界面上的添加按钮,在弹出的对话框中输入需要的文件名和我们的存储位置:文件名可以根据个人喜好任意命名,但是存储的位置应该输入为/android/eclipse。如下图4.3.4所示:图4.3.4安装ADT3)配置完成后,我们需要选择添加上面安装成功的ADT,会展示有DeveloperTools,我们点击展开,出现两个按钮:AndroidDevelopmentTool,AndroidDDMS,选中。如图4.3.5所示:图4.3.5表示ADT安装成功4)随后就是按提示,我们一步一步next。5)完成之后:选择Window>Preferences...6)在左边的界面中选择Android,点击右侧的Browse按钮...选择SDK的路径,我的路径为:D:\AndroidDevelop\android-sdk-windows。7)点击Apply即可,以上则全部配置完成。4.3.5创建AVD要创建了AVD,这是在模拟器确保运行前首先要做的事情。1)在Eclipse中。选择Windows>AndroidSDKandAVDManager。2)先点击虚拟设备,然后再点击新建。3)填入名字,选择任务中的API,SDCard的大小可以任意由开发人员自动设定,Skin可以任意选择,Hardware应当保持目前的默认值。4)点击CreateAVD,就可以完成AVD的创建。5)点击屏幕左侧的AvailablePackages选项,选择右面的/android/repository/repository.xml,如图4.3.5所示:图4.3.5勾选AvailablePackage6)点击InstallSelected,然后就是按提示一步步地往下进行操作即可。4.6系统的主界面设计4.6.1浏览单词用户按照字母顺序浏览单词,界面提供单词的美式发音,英式发音,单词解释,双语例句等信息。代码实现如下所示:/**

*播放語音

*@paramsource

*@parammOnFinishPlayAudioListener

*@paramvoice

*/

publicvoidplayVoice(Stringsource,OnFinishPlayAudioListenermOnFinishPlayAudioListener,Stringvoice){

this.mOnFinishPlayAudioListener=mOnFinishPlayAudioListener;

YoudaoSpeechSynthesizerParameterstps=newYoudaoSpeechSynthesizerParameters.Builder()

.source(source)

.timeout(12000)

.lanType("en-USA")

.voice(voice)

.speed(1.0f)

.volume(3.0f)

.filePath(Environment.getExternalStorageDirectory().toString()+"/youdao/")

.fileName("abc")

.build();

YoudaoSpeechSynthesizeryoudaoSpeechSynthesizer=YoudaoSpeechSynthesizer.getInstance(tps);

youdaoSpeechSynthesizer.synthesizeAndCache(source,listener,"requestid");

}

YoudaoSpeechSynthesizerListenerlistener=newYoudaoSpeechSynthesizerListener(){

@Override

publicvoidonResult(finalTTSResultresult,Stringinput,finalintseq,Stringrequestid){

playAudioByUrl(result.getSpeechUrl(),mOnFinishPlayAudioListener);

}

@Override

publicvoidonError(finalTTSErrorCodeerror,finalStringinput,finalintseq,Stringrequestid){

}

};

/**

*播放来自网络的URL音频文件

*

*@paramurlurl

*@throwsException

*/

publicvoidplayAudioByUrl(Stringurl,finalOnFinishPlayAudioListeneronFinishPlayAudioListener){

try{

if(url==null){

return;

}

if(mMediaPlayer==null){

mMediaPlayer=newMediaPlayer();

mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

}

mMediaPlayer.reset();

mMediaPlayer.setDataSource(url);

mMediaPlayer.prepareAsync();

mMediaPlayer.setOnPreparedListener(newMediaPlayer.OnPreparedListener(){

@Override

publicvoidonPrepared(MediaPlayermp){

mMediaPlayer.start();

}

});

mMediaPlayer.setOnCompletionListener(newMediaPlayer.OnCompletionListener(){

@Override

publicvoidonCompletion(MediaPlayermp){

if(onFinishPlayAudioListener!=null){

onFinishPlayAudioListener.OnFinishPlayAudio();

}

}

});

mMediaPlayer.setOnErrorListener(newMediaPlayer.OnErrorListener(){

@Override

publicbooleanonError(MediaPlayermp,intwhat,intextra){

if(onFinishPlayAudioListener!=null){

onFinishPlayAudioListener.OnFinishPlayAudio();

}

returntrue;

}

});}catch(Exceptione){

}

}

publicinterfaceOnFinishPlayAudioListener{

voidOnFinishPlayAudio();

}效果图如图4.6.1所示:图.2单元测试每个单元会有单元测试,系统随机从该单元中抽选20个单词作为考试内容,答题过程中,会实时判断选择的正确性,如果答题错误,该单词会自动记录到app本地数据库SQLite中,作为错题集的依据,解答完后,系统会实时显示本次的测试成绩和分数排名。代码实现如下所示:if(position==0){

viewHolder.content.setText(data.getTitle());

viewHolder.answer.setVisibility(View.GONE);

}elseif(position==1){

viewHolder.content.setText(data.getOptiona());

setAnswer(viewHolder,"a");

}elseif(position==2){

viewHolder.content.setText(data.getOptionb());

setAnswer(viewHolder,"b");

}elseif(position==3){

viewHolder.content.setText(data.getOptionc());

setAnswer(viewHolder,"c");

}elseif(position==4){

viewHolder.content.setText(data.getOptiond());

setAnswer(viewHolder,"d");

}

viewHolder.answer.setOnClickListener(newView.OnClickListener(){

@Override

publicvoidonClick(Viewv){

if(GeneralUtils.isNullOrZeroLenght(data.getSelect())){

data.setSelect(Constants.select.get(position));

notifyDataSetChanged();

}

}

});privatevoidsetAnswer(ViewHolderviewHolder,Stringpostion){

if(GeneralUtils.isNotNullOrZeroLenght(data.getSelect())){

if(postion.equals(data.getSelect())){

if(postion.equals(data.getSuccess())){

viewHolder.answer.setBackgroundResource(R.drawable.circle_right);

}else{

viewHolder.answer.setBackgroundResource(R.drawable.circle_wrong);

data.setWrong(true);

}

}else{

if(postion.equals(data.getSuccess())){

viewHolder.answer.setBackgroundResource(R.drawable.circle_right);

}else{

viewHolder.answer.setBackgroundResource(R.drawable.circle_gray);

}

}

}

}效果图如图4.6.2所示:图.3错题重测在错题复习结束,用户可以依据错题进行测试,系统从错题中挑选20个单词作为测试条件。代码实现如下所示:Stringtitle=getIntent().getStringExtra("title");

if(GeneralUtils.isNotNullOrZeroLenght(title)){

title_name.setText(title);

if(GeneralUtils.isNotNullOrZeroSize(DictionaryDatabaseManager.getWrongTopics())){

data.addAll(DictionaryDatabaseManager.getWrongTopics());

for(inti=0;i<data.size();i++){

TopicBeantopicBean=data.get(i);

topicBean.setSelect("");

}

}

}else{

title_name.setText("实时考试");

data.addAll(DictionaryDatabaseManager.getTopics());

}

adapter=newTestTopicAdapter(this,data.get(position));

listview.setAdapter(adapter);

if(position==0){

left.setVisibility(View.GONE);

}else{

left.setVisibility(View.VISIBLE);

}效果图如图4.6.3所示:图.4英语趣闻在学习比较疲劳时,可以通过发现功能查看一些英语趣闻,系统会预置一些英语趣闻的H5页面,用户可以按照自己的爱好选择。代码实现如下所示:privatevoidinit()

{

title_name=(TextView)view.findViewById(R.id.title_name);

webView=(WebView)view.findViewById(R.id.webview);

title_back_layout=(LinearLayout)view.findViewById(R.id.title_back_layout);

webView.getSettings().setBuiltInZoomControls(true);

webView.getSettings().setUseWideViewPort(true);

webView.getSettings().setLoadWithOverviewMode(true);

webView.getSettings().setDefaultTextEncodingName("UTF-8");

webView.setWebViewClient(newMyWebViewClient());

webView.loadUrl("/read/famousremark");

}

/**

*

*<初始化数据>

*<功能详细描述>

*@see[类、类#方法、类#成员]

*/

privatevoidinitData()

{

title_name.setText("英语趣闻");

title_back_layout.setVisibility(view.GONE);

}效果图如图4.6.4所示:图本章小结本章主要介绍了Android的定义和特色,开发的一些基本知识和开发工具的安装过程,这是开发程序前必须掌握的知识点。后半部分给出了系统主界面的设计及关键代码,这是英语单词学习APP的主要实现方法和内容。通过编写代码实现功能,可以进一步地了解Android开发的具体流程及需要注意的事项。第5章系统测试5.1系统测试计划系统的测试是各类项目开发中是非常重要的一个过程,特别在以软件开发为主的IT企业中,系统测试是项目开发过程中一个必不可少的阶段,进行专门的系统全面测试,有利于及时发现在项目开发过程中可能因为误解或者沟通问题而产生的差错,并且可以帮助运营人员及时发现系统运营过程中可能出现的无法理解的操作过程。最终可以帮助系统在最后上线时候可以稳定正常的运行。因此针对英语单词学习APP的测试,主要测试的内容有:学习模块浏览单词,并且能够显示单词的解释,例句和发音;考试模块的单元测试,点击测试阶段,进入到实时考试,按照显示的单选题,选择答案,界面可以实时显示选择结果的正确性,完成考试后并显示总计答题的正确数;错题集的联系错题模块,进入到错题联系,跟实时考试功能类似,只不过当前考的是错题;英语趣闻模块,进入到英语趣闻模块,可以看到相关的英语新闻。5.1.1系统测试环境客户端采用的操作系统为:小米手机一部5.2系统测试过程及结果在进行了一系列的测试过程后,我们需要及时的把测试结果进行整理反馈出来,在分析这些漏洞和代码之后,帮助我们尽快的进行相关的漏洞或者操作上的问题进行修改。5.2.1浏览单词用户打开软件,在学习模块,可以按照字母顺序浏览单词,同时界面提供单词的美式发音,英式发音,单词解释,双语例句等信息,测试结果通过。

测试结果图如图5.2.1所示:图.2单元测试进入到考试模块,点击阶段测试,系统随机从该单元中抽选20个单词作为考试内容,我们在答题过程中,当我们选择选项后,系统会实时判断选择的正确性,解答完后,系统会实时显示本次的测试成绩和分数排名,测试结果通过测试结果如图5.2.2所示:图.3错题重测进入到错题集模块,选中联系错题功能则进入到错题重测界面,用户可以依据错题进行测试,系统从错题中挑选20个单词作为测试条件,测试结果通过。测试结果如图5.2.3所示:图.4英语趣闻进入到英语趣闻模块,界面会展示系统预置的一些英语趣闻的H5页面,测试结果通过。测试结果如图5.2.4所示:图系统测试结果本次系统测试环境为安卓7.0系统,安卓小米手机,在模拟用户对各个主要模块进行一些列的操作后,在完成一个系统设计开发后,我们需要对这个系统进行系统化的测试,测试工作需要是细致而艰苦的进行,最后通过测试结果评估该系统的性能及稳定性,此外对系统的单独测试主要从以下三个方面入手:① 功能测试:测试该手机app是否已经满足了需求分析内所需的要求,是否已经实现了设计中所描述的功能,手机app经过推广到市面后是否得到了用户的满意。② 性能以及在高强度下的模拟测试:最高实际限度的测试系统能力,即应用软件能否在某些超负荷环境下,该软件的功能是否能够顺利地持续运行的结果。③ 安全性测试:要看看安装了该应用软件后会不会对手机的其他软件运行产生负面作用,即检查一下系统是否会受到各种各样不正常的干扰,影响手机的正常运行。经过缜密的测试之后,系统均能达到预计的操作结果,因此该系统测试结果通过,符合毕业设计的运行要求。5.4本章小结通过系统测试,可以发现软件中仍然存在的问题,哪些问题需要改进,哪些漏洞需要修复。这是整个软件开发最后的一个步骤,也是非常重要的一个环节。通过反复的测试修改,可以看出app运作是否稳定,功能是否能正常实现。测试得出的结果将一定程度反映出开发过程中的一些成果。结论21世纪,是以网络技术为核心发展的信息时代。目前,网络在社会发展中的地位尤为突出,各行各业都离不开网络技术的推动发展。有线电视网络、电信网络和计算机网络,这三个网络是当今社会的三大巨头,它涵盖了我们日常科技生活的多重方面,而这“三网合一”的技术正在逐步地被加快的推动,为了能够实现在电信网络与计算机网络这两者之间的通信资源和信息资源互相利用与共同分享,在迎接互联网移动化的信息时代的到来,Android不仅可以在电信网络上运行,而且也可以在计算机网络上运行,使得电信网络和计算机网络之间的关系变得更加紧密起来。这种在安卓平台上的移动应用开发在现今,甚至是未来几十年内都是属于IT行业中的一大热门的潮流,许多人才投身于该行业之中进行研究开发,可谓是新兴的朝阳产业。随着我们祖国国际化的提高,英语的重要性和普遍性日益凸显。英语作为一门语言,其基础是词汇,英文词汇量的扩充是提高英文水平的基础。英语的学习,大多数国家的高等学府,大学院校,都开设英语语言文学专业,仅在中国,就有一百多所大学设有英语专业或英语相关专业。在很多交流的话题中,有很多的语言都是以英语做为标准通用语言。而且在电脑或者是互联,是建立在英语的基础之上的,在有些英语的领域中,都是于英语有极大的关联的。其实设计完成这款英语单词学习APP,用户可以查找单词,浏览单词,单词读音,只需要一部只能手机,用户利用碎片化时间来随时随地的学习英语,同时我们的系统还设置有各种光卡,比如单元测试,阶段测试,动态调整每个人的单词学习任务,实时监测学习效果。并提供错题库,对错题循环复习,从而帮助学生轻松的完成英语课程的学习和提高个人的英语能力;同时还提供英语趣闻模块,大家都知道学习是个枯燥无味的过程,很多人都会在学习的半途中放弃,非常可惜。我们专门为枯燥的学习提供趣闻模块,用户学习累的时候,可以打开趣闻模块,查看英语相关的趣闻,适当的放松。通过英语单词学习APP,可以更快的提高英语能力,为将来在职场中取胜增添一定的筹码。。这次毕业设计,我对Android软件开发技术也有更深一步的了解,熟练掌握了Java语言。这次毕业设计我不仅增长了知识、丰富了经验,而且学会了将理论知识运用到实践上,锻炼了我独立自主地学习和研究能力。可以说自己的能力在一定程度上有所提高,为自己即将踏入社会打

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论