基于安卓平台电子词典的设计和实现.docx
- 文档编号:9618380
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:24
- 大小:133.33KB
基于安卓平台电子词典的设计和实现.docx
《基于安卓平台电子词典的设计和实现.docx》由会员分享,可在线阅读,更多相关《基于安卓平台电子词典的设计和实现.docx(24页珍藏版)》请在冰豆网上搜索。
基于安卓平台电子词典的设计和实现
基于安卓平台电子词典的设计和实现
作者:
日期:
题目:
姓
名
学
号
学
院
专
业
年
级
班
级
指导教师:
英文题目:
本科生毕业论文(设计)
基于安卓平台电子词典的设计与实现
TheDesignandImplementofDigtalDictionaryBasedonAndroidPlatfrom
宁舒琪
1311214019
国际传媒学院
数字媒体技术
2013
131110
王维花职称:
讲师
2017年5月
毕业论文诚信声明
本人郑重声明:
所呈交的学位论文,是在导师的指导下独立
进行研究所取得的成果。
学位论文除文中已经注明引用的内容
外,不包含任何其他个人或集体已经发表或在网上发表的论文。
特此声明。
论文作者签名:
日期:
中文摘要
21世纪以来,科技发展势头迅猛,电子行业更可以说得上是日新月异。
从各个方面来看,由于智能手机的普及,手机APP已然成为了电子行业中的领头羊。
词典对于人们学习知识,认识世界有着不可估量的价值,可以说是每一个人开启学习殿堂的第一扇门。
但是传统的词典有着体积大,不便于携带的劣势,在如今飞速发展的现代社会,这显然并不会成为大多数人的最佳选择。
于是电子词典手机APP就如雨后春笋般层出不穷,成为了词典这个大家族中不可或缺的一员。
比起传统词典,手机电子词典具备了便于携带、操作简单、方便快捷等优点。
如今市面上各大应用市场中的电子词典大多占用内存大,对手机的硬件配置要求也比较高,运行起来需要占用的资源较大。
所以本项目意在开发出一款占用内存小,适用度较高,便于操作,能被大部分用户所接受的手机APP软件。
本文详细介绍了开发软件所用到的的数据库的创建过程、开发软件的环境配置过程、以及细致地分析了整个软件的功能性与实用性,阐述了本项目的环境背景与整个行业的发展现状,对于技术上的创新部分与难点部分进行了详细分析,并且清晰的将整个软件的功能结构展示出来了。
本项目基于Android平台,使用了SQLite轻量级数据库实现了本地查询,单词本,单词释义等功能,研究方法和技术主要涉及Android操作系
统应用层开发,经过反复测试,该项目现已研发完成。
关键词:
电子词典;Android;SQLite数据库;英语单词
ABSTRACT
Sineetwenty-firstCentury,therapiddevelopmentofscieneeandtechnology,theeleetronicsindustrycanbesaidtobechangingwitheachpassingday.Inallrespects,duetothepopularityofsmartphones,mobileAPPhasbecomealeaderintheelectronicsindustry.Dictionaryforustolearnknowledge,knowtheworldhasimmeasurablevaluejtisthefirstdoorforeveryoneofustoopenourstudyhall.Thetraditionaldictionaryhasthedisadvantagesoflargevolumeandinconvenientcarrying,Intoday'srapidlydevelopingmodernsociety,thetraditionaldictionaryisclearlynotthebestchoiceformostpeople.Asaresult,theelectronicdictionarymobilephoneAPPhassprunguplikemushrooms,hasbecomeanindispensablememberofthefamily.
Comparedwiththetraditionaldictionary,electronicdictionaryhastheadvantagesofeasytocarry,easytooperate,convenientandquick.Today,themarketisthemajorapplicationoftheelectronicdictionaryinthemajorityofmemory,thephone'shardwareconfigurationrequirementsarerelativelyhigh,runninguptheneedtotakeupmoreresources.Sothisprojectisintendedtodevelopasmallfootprint,highapplicability,easytooperate,canbeacceptedbythemajorityofmobilephoneusersAPPsoftware.
Thispaperintroducesthedevelopmentprocessofthedatabaseusedinthedevelopmentofthesoftware,theprocessofthedevelopmentofthesoftware,andthefunctionandpracticabilityofthesoftware,describesthedevelopmentstatusoftheenvironmentalbackgroundoftheprojectandthewholeindustry,theinnovationpartandthedifficultpartofthetechnologyareanalyzedindetail,andclearfunctionalstructureofthesoftwarewillshowout.
ThisprojectisbasedontheAndroidplatform,usingtheSQLitelightweightdatabasetoachievealocalquery,theword,thewordinterpretationandotherfunctions,researchmethodsandtechniquesaremainlyinvoIvedinthe
developmentofAndroidoperatingsystemapplicationlayer,afterrepeatedtesting,theprojecthasbeencompleted.
KeyWords:
Electronicdictionary;Android;SQLitedatabaseEnglishwords
1安卓电子词典概述1
1.1开发的背景1
1.2目的和意义2
1.3开发目标3
2需求分析4
2.1功能需求分析4
2.2可行性分析4
2.3开发环境需求5
3系统框架设计9
3.1系统框架设计9
3.2各模块框架设计10
3.3数据库设计12
4模块实现15
4.1离线查询模块实现15
4.2单词本模块实现15
5系统测试18
5.1运行18
5.2测试18
6结语19
参考文献20
致谢22
1安卓电子词典概述
1.1开发的背景
古往今来,人类传递信息的媒介一直在不断变化,从目前已知最古老的甲骨文是在兽骨或石头上刻字、到后来蔡伦造纸术,人们开始用纸媒来传播信息、而如今的社会,纸媒又面临着逐渐被网络媒体取代的局面【1】人
类用来传递信息、传播文化的载体一直在改朝换代,可以说是紧紧地跟随着时代的脚步。
而现在是互联网时代,以电子计算机为代表的现代科学获得了突飞猛进的发展[2],而英语是目前世界上使用最广泛的语言,全世界上有60多个
国家将英语作为官方语言。
【3】学习英语者的年龄层也普遍越来越年轻,这些年轻人们生活在这个科技的、新媒体的时代,他们习惯并热衷于接受新鲜的学习方式、乐意去体会高效的不枯燥的教育模式、享受那种随时随地学习的乐趣。
电子词典作为学习语言这条路上不可或缺的一个助力⑷,也是不断地在蜕变,从掌上词典、电脑客户端、平板电脑再到智能手机等移动终端,它的影响力也是迅速地普及开来。
而在这个变化的过程中,电子词典的占用资源越来越小、运行起来越来越快速、各项功能越来越全面、词典的数据库越来越庞大、检索单词也越来越便捷。
⑸而Android操作系统的出现,又使得电子词典软件的适用性得到了很大的提升【6,,基本上达到了不
管在哪个版本的Android手机都可以顺畅地运行的效果,电子词典手机APP的便捷与实用使得它对人们的生活、学习、阅读、查询、以及交流方式产生了巨大的影响。
【7,
1.2目的和意义
1.2.1选题的目的
二十世纪后半期,随着社会的迅速发展与进步,现代科学获得了飞速的发展,电子产品也与人们的生活紧密地结合在了一起,现代科学的创新与进步使得从前无法实现的事情变成现实,使得各种电子词典的诞生变得可能。
8】虽然时间不长,在这十几年间电子词典却迅速成为词典行业中不可或缺的一员,尽管可能并不能完全取代传统的词典,但是已经被广泛运用在日常学习与教学中,并收获广泛好评。
【9】而且因为电子词典的经济实惠与便于携带这些特点明显优于传统的词典,所以人们认为它已经具备了对传统词典发起挑战的资格,并成为了传统词典的有力竞争者。
1.2.2选题的意义
选择这个选题是为了巩固加强自己大学期间所学的Java语言编程基本
功,为了熟练掌握Eclipse开发工具的运用,拓宽常用数据库的应用。
Java语言可以说是当今非常流行的网络编程语言,它具有面向对象,跨平台,分布应用等特点,它更加贴近自然的语言,并且有利于软件的维护和继承。
所以我希望通过这次项目的实践,把大学期间所学课程知识及相关语言加以融会贯通,更加全面的掌握Java语言的编程思想和面向对象程序设计的方法,为今后从事实际工作获得更丰富的实战操作经验,打下坚实的基础。
在学习中工作中,我们遇到不会的英文单词、看不懂的英文文章,第一时间就会想到查词典,但是传统的词典笨重不易于携带的特点,决定了我们不可能将它随时带在身边,很容易需要使用的时候却找不到。
而手机上安装的电子词典APP能够让我们随时随地,轻轻松松的检索到我们需要的单词,可以说是最方便、最便捷、最轻松的选择。
电子词典手机APP是一
种多功能的词典类查询软件,即使在没有网络的情况下,也可以做到即时查询,快速、准确、细致地检索英文单词,对于语言学习者们提供最大帮助。
1.3开发目标
从词典的实用性出发,致力于打造一个画面美观、运行快、占用内存少,实用且具有一定推广价值的安卓平台手机APR该电子词典app主要实现的功能有:
1)单词查询;
2)新用户注册;
3)用户登录;
4)收藏生僻词汇;
5)单词本功能;
2需求分析
2.1功能需求分析
通过开发前期对于各大手机软件应用市场进行市场调研,得到了一份基本功能数据汇总,确定了大部分电子词典软件都包含着的基本功能,也就是用户对于电子词典手机APP的主要需求。
在仔细研究以及分析这些数据之后,以下是电子词典这个软件所需要基本的功能:
(1)检索功能,这个最核心的功能,实现了单词的查询操作。
(2)单词本功能,用户可以将生疏的单词储存在单词本,随时都可以快速的找到,方便学习。
(3)登录功能,给予每个用户的私人空间,显示你的个人信息,属于你自己的单词本。
(4)注册功能,注册成为新用户。
(5)单词解释功能,英译汉,告诉用户查询的单词的释义。
2.2可行性分析
2.2.1研究的可能性
⑴.技术上可能性:
完全可以利用Java语言跟SQLite数据库制作出一款符合设计目标的多动能电子词典系统,而且该运行程序则可以很好的实现项目要求中所提出的各项功能指标。
⑵.操作上可能性:
本系统不要求使用者对开发工具Java语言有任一方面的了解,也正是因此,用户没有必要参加任何相关培训,就可以轻松上手本运行程序。
进入本运行程序,用户可以轻松地通过手机来实现浏览、录入、查询等操作,真正意义上地实现了管理的自动化、规范化,进而大大的节约了时间。
2.2.2研究的基本条件
电子词典这个项目的提出始于20世纪40年代末期,是美国人对于机器
翻译的研究,在50到60年代中期也曾经引起过人们对于机器翻译的热潮,但是最终由于当时的社会环境、生活状态等种种原因这项事业一直停滞不亍
前,在进入了80年代后,电子词典进入了活跃期。
【101目前根据已经掌握了的国内外关于电子词典的研究文章【111来看,国内多项研究表示,相比传统的纸质媒体来说,电子词典的后台数据库更加庞大,也就是说存储的资源比传统的词典更多。
【12】纸质的词典每过几年就会出新版的词典,这是由于单词库在不断地进行着更新,而电子词典完全没有这个顾虑,只需要上网下载最新的数据库安装在软件上就好,比纸质版的传统词典要节约成本费且性价比高。
电子词典具有快捷检索、方便携带、存储空间大、数据库更新速度快等这些特点,而这些特点正式基本上所有类型的电子词典的特点之和。
223能否取得实质性进展
本研究可以取得实质性进展,核心观点已经初步提炼出来,主要论据基本完成搜集,研究框架也已经得以确定。
2.3开发环境需求
2.3.1开发工具介绍
1.Eclipse简介
Eclipse是开放源代码的、基于Java的可扩展开发平台。
【131Eclipse最开始是由IBM公司最为主要发起人投资并开发出来的,但是在一开始的时候,Eclipse在业界的声誉一度落到最低谷,甚至遭受到了许多人的批评,直到2003年Eclipse2.1版本发布的时候,它能够快速创建语言环境、快速搭建编程平台、以及操作方便这些优点,一下子就引起了业界的轰动,蜂拥而至官网下载Eclipse的用户们,曾经一度将服务器挤爆,造成服务器拥挤瘫痪。
⑶正是因为这样富有创新性的平台特性,众多公司被他吸引,纷纷加入它的平台。
为用户提供一种能够使用各种语言工具并且无缝衔接的编程平台,这就是Eclipse的主要任务。
2.SQLite轻量型数据库概述
SQLite—个轻量级别数据库,具有很多不错的特点。
【14】它不需要配置、不需要安装、也不需要管理员、并且同一个数据库文件可以在不同机器上面使用、大部分应用比目前常见的客户端的数据库快、没有其它依赖、源代码开放,也正因为具备着这些优点,SQLite才被普遍地运用于各种手机
软件中。
232开发环境搭建
(一)Android开发环境的搭建
1)第一步,在官网上下载JDK,配置环境变量,右键点击计算机(我的电脑)属性--高级系统设置--高级--环境变量,修改如下变量:
JAVA_HOME值为:
C:
\ProgramFiles\Java\jdk1.7.0_51
JAVA_HOHEC:
KFrogram
图2-3-2-1.JAVA_HOME配置环境变量
CLASSPATH值为:
在原本的变量最后加上%JAVA_HOME%\bin;
编憲至统变星L耳」‘
变重名(X):
CLASSPATH
变重值(V):
ib;$JAVA_HDNIE%\li1)Ucols?
jar
确走」L取消
图2-1CLASSPATH配置环境变量
Path值为:
在原本的变量最后加上%JAVA_HOME%\bin;
嚴浆统变量'LS'
娈重名00:
"th
变里值(V):
J\QTLiteVQTSystem:
确定取潸
图2-2Path配置环境变量
2)检查JDK是否安装成功:
首先,快捷键window+R,打开运行窗口;在文本框处输入cmd,按
下回车;在鼠标闪烁的地方输入java-version,回车运行,运行结果如下图:
图2-3检查JDK
(二)登录官网,找到合适版本的Eclipse,点击下载,下载完成后不用安装,直接可以使用。
(三)下载官方adt压缩包并安装,配置sdk环境变量
1)将sdk压缩包解压到任意路径。
2)运行Sdk文件夹下的SDKSetup.exe,选择所需的文件安装。
3)在用户环境变量中新建PATH值:
AndroidSDK文件夹中tools绝对路径。
新建用户受量L於」
图2-4PATH配置用户环境变量
4)检查AndroidSDK是否安装成功:
再次进入运行窗口,输入android-h,回车如果出现图6中的代码,证明安装成功。
ri
I3B命令18不符
图2-5检查SDK
(四)运行Eclipse
3系统框架设计
3.1系统框架设计
系统框架包含了关于软件系统的重要决策,系统框架一旦决定下来,就相当于整个软件的框架都搭建出来了。
各部分之间的静态、动态关系,各个模块之间如何跳转、如何连接、如何交换彼此的信息,几乎就一目了然了。
根据本项目需要实现的功能和目标,使用例图的方式比较简洁明了,接下来,我会使用系统基本功能用例图描述了整个系统的基本结构功能。
然后再具体地分为每一个小模块进行阐述。
系统基本功能用例图:
点击进入』
图3-1系统功能用例图
3.2各模块框架设计
3.2.1主菜单模块框架
主菜单模块中有两个子页面:
离线词典和单词本。
点击离线词典按钮就会进入到离线词典界面;而点击单词本按钮会进入登录界面,因为每一位用户的单词本都是不同的,离线词典游客也可以使用,但是单词本只有注册过的用户专享。
主菜单界面(zhucaidan.xml)背景是一张简洁的图片,只有两个按钮,在Zhucaidan.java中设置了两个按钮的跳转程序。
图3-2主菜单模块框架图
3.2.2离线词典模块框架
离线词典界面上面是文本框,在文本框中用户可以输入需要检索的单词,输入完成后点击搜索,就会跳转到用户检索的单词的释义界面;最顶端左侧有一个返回的小三角,点击就会返回上一层主菜单界面。
图3-3离线词典模块框架图
3.2.3单词本模块框架
进入单词本界面之后,点击用户收藏过的单词,就会跳转到该单词的释义界面;返回上一层仍然是左上角小三角。
登录4返回上一层4
图3-4单词本模块框架图
324登录模块框架
登录界面有两个子页面:
注册界面和单词本界面。
如果是没有注册过的用户想要使用单词本功能,就必须要先注册,点击注册按钮,进入注册界面;如果是注册过的用户,直接使用用户名密码登录就行,登陆成功进入单词本界面;返回上一层左上小三角。
新用户注册,用户名跟密码会被存进数据库;老用户登录,数据库会核对用户名与密码是否对应,正确则登陆成功。
图3-5登录模块框架图
325注册模块框架
注册界面,有用户名、密码、邮箱、联系方式四个文本框。
填入用户的信息,注册成功,页面自动返回登录界面,登录进入单词
本;如果不想注册,可以左上角小三角返回上一页。
图3-6注册模块框架图
326单词解释模块框架
单词解释界面,有单词的中英文解释以及音标,这是检索之后用户最
终看到的界面,收藏小星星按钮,点击可以把该单词存入单词本;需要检
索下一个个单词的话,则需要返回上一层离线词典界面继续检索。
图3-7单词解释模块框架图
3.3数据库设计
3.3.1数据库分析
对系统数据进行分析,创建如下表:
1)数据库中所使用的表
表名
lixian
离线单词数据库
diet
素引数据库
wordbook
单词本数据库
图3-8数据库中所包含表
2)lixian表结构
字段名称
id
单词編号
word
单词
content
释义串
图3-9离线数据库表结构
3)diet表结构
字段名称
id
单词编号
word
单词
meaning
单词释义
图3-10diet表结构
4)wordbook表结构
字段名称
word
单词
meaning
釋
time
添加时间
图3-11wordbook表结构
332数据库的创建
数据库是按照一定的结构和规律组织起来的相关数据的集合,是综合各个用户数据所形成的的数据集合,是存放数据的仓库。
【15】
本项目创建了三个数据库,离线单词数据库,索引数据库和单词本数据库。
详细代码:
//SQLiteOpenHc1pur为抽彖类』用来管理数据库的创建和版本的更新*
publicclassKyTesiDB^lextendsSQLiteOpenHelper{
publicJlyTestDB_l(Contextcontext^Stringname,Cursorfactaryfactorintversion){super(context,namejfactory,¥亡rsion),
}
"数据库文件第一次创建时调用,T般用来创建数据表
^Override
publicvoidanCreate(SOLiteDatabasedb){
Stringsql-^createtablediet(usernMetextnotnulljpasswordteztnotnull)y\db*execSQL(sq!
■';
Log■申("testdb^onCreat亡");
「升级数据库时的操作,通常在里面用于修改表
^Override
publicvoidanUpgrade(SQLiteDatabasedb,intDldVersioinjintnewVersiarO(
//TODOAut□-generatedinethodsiub
J
}
图3-12数据库的创建
4模块实现
4.1离线查询模块实现
离线词典的实现是根据给定的值,也就是索引建key,来查找数据库里相对应的值(value)是否存在。
在词典接口定义好索引建以及这个单词的释义,通过用户的输入内容来检索释义。
主要代码:
(调用SQLite数据库)
StrmsdatabaseFilenameE=DAIABASE_PATWS+H+DAlABASEFILENAKiES;SQLtteDitabaaedb=openOrCreateDitab35e(databaaeF
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 平台 电子词典 设计 实现