Android手机电子书阅读器的设计实现分析设计分析说明书模板.docx
- 文档编号:6361088
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:44
- 大小:1.07MB
Android手机电子书阅读器的设计实现分析设计分析说明书模板.docx
《Android手机电子书阅读器的设计实现分析设计分析说明书模板.docx》由会员分享,可在线阅读,更多相关《Android手机电子书阅读器的设计实现分析设计分析说明书模板.docx(44页珍藏版)》请在冰豆网上搜索。
Android手机电子书阅读器的设计实现分析设计分析说明书模板
毕业设计
题目Android手机电子书阅读器的设计与实现
Android手机电子书阅读器的设计与实现
ThedesignandImplementationoftheAndroidmobilephonee-bookreader
Xxx
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部容。
作者签名:
日 期:
学位论文原创性声明
本人重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
注意事项
1.设计(论文)的容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
摘要
在这个信息化的时代,计算机越来越精致,手机也越来越智能化,所以,一个较好的应用软件在很大程度上能提升一个手机的品牌。
而在智能手机上安装一个拥有丰富功能支持的电子书阅读器,更是我们刻不容缓的事情。
本设计采用Android平台,根据对手机电子书阅读器的客户需求分析和技术可行性分析,经过总体设计和详细设计编码测试等阶段,完成了电子书阅读器软件的设计。
不仅实现了电子书阅读器最基本的阅读功能,而且还为用户提供了丰富的功能支持,包括找书,书签,自动翻页以及阅读界面设置的操作。
而本次设计最大的特点则是通过屏幕触控实现了移动时的翻页特效。
经过不断的测试与完善,电子书阅读器功能稳定,并且在真机上对其进行了测试与验证,基本上达到了用户的需求标准。
关键词:
Android;电子书阅读器;屏幕触控;翻页;
Abstract
Inthetimeofinformationtechnology,withtheincreasinglysophisticatedofcomputersandmoreandmoreintelligentofmobilephones,abetterapplicationsoftwarecanenhanceabrandofthephonetolargeextent.Itisoururgentforusthatinstalledonthesmart-phonehasarichfunctionalitytosupportthee-bookreader.
Basedontheneedsanalysisofcustomersandtechnicalfeasibilityanalysis,IusetheAndroidplatformtoachievethedesignofmobilephone’se-bookreader.Aftercompletingtheoveralldesignanddetaileddesigncodingtestingstage,Iachievedthedesignofthee-bookreadersoftware.NotonlycanthesoftachievethebasicfunctionofE-bookreader,butalsooffermanyotherfunctionsforusers,includingbooksandbookmarks,flippingpagesautomaticallyanddesigningthereader.ThesignificantcharacterofthedesignachievetheflippingpageofmobilebytouchingscreenThroughcontinuoustestingandimprovement,E-bookreaderisstable.Thetestingandverificationinrealdevicehascarriedouttomeetthecustomers’requirementswhichhavereachedthestandardsofthecustomers’requirements.
Keywords:
Android;e-bookReader;TouchScreen;Flip
第1章前言
1.1课题提出的背景目的及意义
1.1.1课题提出的背景
在这个信息化的时代,IT业已经成为世界发展的主流,我们对信息技术的依赖远远超过了对我们自己的依赖,计算机和手机已经成为我们日常生活中不可缺少的获得信息的渠道。
正因为如此,各种各样的软件层出不穷,我们的生活也因为各种各样的软件变的更有滋有味。
不缺乏娱乐性,也不缺乏教育意义,让我们从这些软件中受益匪浅,使我们看到了相比以前的巨大进步。
同时,随着科技的发展,计算机越来越精致,手机也越来越智能化,所以我们的依赖性也越来越大,越来越离不开这些给我们提供日常信息的工具。
手机也已不再仅仅是简单的人与人通话的工具,而是在很大程度上成为了我们获取信息的一个更好的渠道。
一个好的软件,能够标志一个手机品牌的地位。
所以,开发一款好的手机软件是相当必要的。
以前我们看看杂志,小说都要去图书馆借阅,而且时间有限,很不方便;而现在是在电脑上或者手机上看杂志,看小说,文档。
以此看来,一个好的手机阅读器软件的开发是相当有必要的。
1.1.2课题提出的目的
此次设计的目的很明显,就是给予阅读者更大的便利性,阅读者不用再到处拿着一本厚厚的书籍,大大减少了读者的负担,只需要下载一本txt格式的电子书,放在sd卡里边,就是人们的生活百科。
当然,有些下载不来的资料,还是需要翻阅书籍的。
1.1.3课题提出的意义
计算机改变了人类的工作方式,互联网创造着全新的生活空间,我们接受信息的方式也正在发生深刻的质变。
由于现在阅读器的越来越普及,我们每天清晨读报的习惯也在面对大资讯量的新闻时渐渐淡化,面对印刷出版物,我们仍视之为文化传承的载体,但不可抵挡的,是无纸化电子阅读时代的悄然临近。
我们现在信息化的生活,充斥着信息的传递,但是,越来越多的人依赖于几乎朝夕相伴的手机。
虽然,现在也出现了供人们阅读使用的电子书,但是这些电子书的功能很少很简单,仅仅是简简单单的供人们一行一行的阅览文字信息,或者是仅仅添加一个添加书签的小功能,根本远远不能满足人们的需求。
于是,一个功能良好的全面的电子书阅读器越来越成为广大用户的追求。
本软件是基于android系统智能手机开发的一款电子书阅读器软件,它有一个阅读主界面,主要用来阅读文档。
其优越性表现在实现了从SD卡读取文档或从服务器端下载文档,自动翻页,添加书签,选择书签,清空书签,设置背景音乐,设置背景图片,设置字体颜色,设置字体大小等功能。
此外,给用户更清晰方便的界面,也是本软件的出发点之一。
1.2设计思路及研究方法
1.2.1设计思路
阅读器的设计流程主要是按照软件设计的一般流程:
需求分析、概要设计、详细设计、测试与维护的基本流程来设计开发的。
首先,从整体分析软件功能,将功能模块化;然后对每个模块进行调试。
最后对各个模块进行系统集成。
通过几个月的观察,发现几乎所有的人都有手机,而且几乎有一半以上的人用手机来阅读资料。
可是这些阅读软件不尽人意,而且一个好的阅读软件也还没有安装在智能手机上。
本系统针对这一点进行了较仔细的分析,在老版的阅读软件基础之上进行改进,最后,对系统进行了实现和维护。
1.2.2研究方法
本系统在整体框架研究方法采用的是问卷调查法和观察研究法。
而在总体设计上采用的是结构化方法,在局部底层开发上为便于交流采用快速原型法。
问卷调查法也称问卷法,它是调查者运用统一设计的问卷向被选取的调查对象了解情况或征询意见的调查方法。
观察研究法指根据既定的研究目的,对现象或行为做有计划与有系统的观察,并依观察的记录对现象或行为做客观性的描述和解释。
结构化系统的设计方法是在结构化程序设计思想基础上发展起来的,它的基本涵义是一个系统由层次化的程序模块构成,每一个模块只有一个入口和一个出口,每一个模块只归其上一级模块调用,并有模块连接的准则和构造模块的标准,而且用系统结构图来表达系统的结构,尽可能用最优的方式将系统各部分组织起来。
第2章需求分析
2.1软件的基本功能要求
经过以上问卷调查和观察研究方法,在现行业务流程和数据分析的基础上基本上确定了系统的功能,设计也基本上达到了目标。
根据软件设计的步骤,需求分析是软件设计成功的基础,也是必不可少的步骤。
同时,也对软件的设计提出了具体的要求。
在做足了充分的调查研究之后,基本可以确定软件的功能界面如下:
(1)刚打开软件时的欢迎动画界面。
(2)在没有阅读记录情况下打开软件时进入的软件说明界面。
(3)在主界面下单击“菜单”按钮后弹出的欢迎主菜单界面。
(4)找书选择界面,用来选择找书的途径。
(5)网络下载列表界面,用来列出服务器端可供下载的文档。
(6)下载完成提示界面,用户从服务器端完成指定文档下载任务时显示的界面。
(7)已存在要下载文件提示界面,当用户指定要下载的文档在SD卡中已存在时显示的界面。
(8)SD卡文件列表界面,列出SD卡中存在的所有资料。
(9)阅读界面,用来阅读文档的主界面,是整个阅读器设计核心部分。
(10)书签功能界面,用来选择与书签相关的具体操作。
(11)添加书签功能界面,将当前阅读到的位置以书签名和书页号的形式存至书签表,
方便下次阅读。
(12)选择书签功能界面,通过选择书签记录跳转至想要阅读的位置。
(13)删除书签功能界面,再不想要该条书签记录的情况下实现删除操作。
(14)自动翻页功能界面,实现不同时间间隔自动翻页的效果。
(15)设置界面,用来选择对阅读界面不同的设置。
(16)背景音乐界面,可在阅读的同时欣赏音乐,更大限度的提升。
(17)背景图片界面,用来设置不同的阅读界面风格,使阅读更为个性化。
(18)字体颜色界面,用来设置不同的阅读字体颜色,提升用户的视觉体验。
(19)字体大小界面,通过设置字体大小来满足实际应用中的多重需求。
基本说明如下:
本系统是一个电子书阅读器,主要包含一个主界面,用来实现阅读的功能。
在阅读界面时,点击menu,手机底部会出现四个选项:
找书、书签、自动翻页、设置。
点击找书选项会有两种操作可供选择,分别是在SD卡中找书和通过网络下载;点击书签选项会有三种操作可供选择,分别为添加书签、选择书签和清空书签,其中长按选择书签列表中的某条书签记录也可达到删除该条记录的目的;点击自动翻页选项会有四种操作可供选择,分别为每隔30秒、40秒、50秒自动翻页和停止自动翻页;点击设置选项会有四种操作可供选择,分别为设置背景音乐、设置背景图片、设置字体颜色和设置字体大小,为此用户可通过自己的喜好来设置不同阅读界面的风格,并且可以选择自己喜爱的音乐作为背景音乐,在阅读的同时欣赏。
2.2系统架构
本设计总体逻辑结构层次划分如图2.1所示。
图2.1功能结构图
2.3开发环境
Ø数据库
由于本设计和数据库密切相关,但是对数据库的要求不高,因此可用Android系统本身自带的Sqlite数据库。
ØAndroidSDK与Eclipse开发的插件ADT
由于本设计是基于Android系统的,而Android开发环境的搭建是基于Eclipse的,因此需要下载AndroidSDK与Eclipse开发的插件ADT。
Ø服务器
由于本设计需要用服务器来为其提供下载服务,而且对服务器的要求不高,因此在设计时用Tomcat作服务器。
第3章软件设计
3.1总体软件结构设计
打开电子书阅读器之后,软件会先查看上次阅读的最后记录,以此作为根据来进行判断从而跳转至相应的阅读界面。
然后用户就可在阅读界面下通过选择menu来执行想要的操作:
找书、书签、自动翻页、设置。
点击找书选项会有两种操作可供选择,分别是在SD卡中找书和通过网络下载;点击书签选项会有三种操作可供选择,分别为添加书签、选择书签和清空书签,其中长按选择书签列表中的某条书签记录也可达到删除该条记录的目的;点击自动翻页选项会有四种操作可供选择,分别为每隔30秒、40秒、50秒自动翻页和停止自动翻页;点击设置选项会有四种操作可供选择,分别为设置背景音乐、设置背景图片、设置字体颜色和设置字体大小,为此用户可通过自己的喜好来设置不同阅读界面的风格,并且可以选择自己喜爱的音乐作为背景音乐,在阅读的同时欣赏。
根据各个模块的不同功能,对本设计进行了层次结构的划分。
在Eclipse下创建了一个名为Test的工程,工程的结构图如图3.1:
图3.1软件工程结构图
该功能包是通过AndroidSDK自动生成的,主要包括以下容:
(1)src源代码目录:
该目录存放Android应用程序所有的源代码。
该目录项有不同的包,包中对应开发的源代码,开发过程中的主要精力都集中在开发src目录下容。
(2)gen文件夹目录:
该目录存放了Eclipse的ADT插件自动生成的R.java文件。
实际上R.java定义了一个R类,它包含了应用中用户界面、图像、字符串等各种资源与之相对应的资源编号(id)。
这些资源编号都是系统自动生成的,即有一资源对象,系统就为此在R类中生成相应资源编号,好比一本字典。
(3)Res资源目录:
该目录定义了drawable、layout及values3个目录。
a.drawable目录:
该目录下有drawable-hdpi,drawable-ldpi,drawable-mdpi3个文件夹,分别用来存放不同分辨率的图片资源,用于不同分辨率的手机的开发,可以通过Resource.getDrawable(id)获得该资源。
b.layout目录:
该目录下包含了所有使用XML格式的界面描述文件。
主要用于表述应用程序的用户界面布局,也用于描述用户界面和接口组件。
c.values目录:
该目录包含了使用XML格式的参数描述文件,也可以在此添加一些额外的资源,如字符串、颜色、样式和数组等。
主要用于在代码过R类来调用它们,而不直接使用,这样可将代码和资源分开管理,便于维护。
除了以上文件夹外,还用一个AndroidManifest.xml文件,该文件是系统的控制文件,告诉系统如何处理创建的所有顶层项目,尤其是Activity,凡是需要用到的组件都要在此注册。
同时该文件也是所有Android应用程序都需要的文件,其描述了程序包的全局变量,包括公开的应用程序组件和每个组件的实现类,什么样的数据可以操作,在什么地方可以运行等。
在这个文件中最重要的一个容就是Intent过滤器,这些过滤器描述了何时、何种情况下让Activity启动。
当一个Activity(或操作系统)想要执行一个动作,它将创建一个Intent对象。
该对象包含了很多描述符,描述了想做的操作,像处理数据,数据的类型,以及一些其他的信息。
Android将Intent对象中的所有公开的Intent过滤器比较,找到一个最能恰当处理请求的数据和动作的Activity。
3.2接口设计
3.2.1外部接口
在用户界面部分,根据需求分析结果,用户需要一个友善界面。
在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。
在界面设计部分,本系统按照Microsoft公司的用户界面设计标准,为用户提供友好、方便、直观、简洁的操作环境。
本系统采用了窗口继承的方式,使窗口有统一的界面风格。
同时,对错误信息、提示信息进行标准化,尽量做到清晰明了。
3.2.2部接口
系统在功能模块的设计上,以“高聚、低耦合”为设计目标。
部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。
具体参数的结构将在下面数据结构设计的容中说明。
接口传递的信息将是以数据结构封装的数据、参数传递或返回值的形式在各模块间传递。
3.3数据库设计
3.3.1数据模式设计
一共设计了3表,是:
(1)阅读记录表(阅读记录的ID,书的路径,阅读记录数据)
(2)书签表(书签的ID,书签对应的阅读记录的ID,书签名,书页)
(3)上次阅读记录表(上次阅读记录的ID,书的路径,上次阅读到的书页,上次阅读时的字体)
数据库表的设计如下:
图3.2数据库结构图
3.3.2数据表格设计
本数据库用的是一个小型数据库sqlite3,在数据库中创建了三个表格。
即BookRecord、BookMark和LastTimePage,分别用来存放阅读记录的数据、书签的数据和上次的阅读记录数据。
具体容如表3-1、表3-2和表3-3所示:
表3-1阅读记录表
字段名称
数据类型
字段大小
是否主键
说明
rid
Integer
8
是
阅读记录的ID
path
文本
50
否
书的路径
data
字节数组
不定
否
预读记录数据
表3-2书签表
字段名称
数据类型
字段大小
是否主键
说明
mid
Integer
8
是
书签的ID
ridfk
Integer
8
否
书签对应的阅读记录的ID
bmname
文本
50
否
书签名
page
Integer
8
否
书页
表3-3上次阅读记录表
字段名称
数据类型
字段大小
是否主键
说明
lid
Integer
8
是
上次阅读的记录ID
path
文本
50
否
书的路径
page
Integer
8
否
上次阅读到的页数
fontsize
Integer
8
否
上次阅读的字体大小
3.3.3表的具体设计
表名:
BookRecord
表中字段名称:
rid,path,data.
说明:
用varchar类型存储path,blob类型存储相应的路径下的阅读过程,并规定rid为阅读记录表的主键。
表名:
BookMark
表中字段名称:
mid,ridfk,bmname,page.
说明:
创建书签mid为integer类型主键,定义书签名字bmname为varchar类型,书页号page为integer类型的书签表。
表名:
LastTimePage
表中字段名称:
lid,path,page,fontsize.
说明:
创建书签lid为integer型主键,定义路径path为varchar类型,书页号page为integer类型,字体大小为integer类型的上次阅读记录表。
3.3.4数据字典
数据字典是物理数据库的具体体现。
表3-4BookRecord数据字典
字段名
类型
阅读记录的ID
整型
书的路径
文本
阅读记录数据
字节数组
表3-5BookMark数据字典
字段名
类型
书签的ID
整型
书签对应的阅读记录的ID
整型
书签名
文本
书页
整型
表3-6LastTimePage数据字典
字段名
类型
上次阅读记录的ID
整型
书的路径
文本
上次阅读到的页数
整型
上次阅读时字体大小
整型
3.4软件设计模型
建立系统数据模型的主要工具是实体——关联图,即E-R图。
E-R图的图形符号约定如下表:
表3-7E-R图图形符号
图3.3存储阅读记录的E-R图
图3.4存储书签的E-R图
图3.5存储上次阅读记录的E-R图
3.5代码设计
代码是按使用的目的,表示识别、分类、排序数据的数字、文字或符号。
识别是将文件中存储数据区别开,或将文件中的数据按组区别开,识别主要用数据更新与查找。
分类是根据数据编码中的定义对数据分类,用于检索数据或统计分析。
排序是根据编码规则,按代码中规定的次序排序,用于输出与生成报表。
3.6软件维护设计
采用MVC设计模式,将UI层和业务逻辑层分离开来,采用针对接口编程的方式,降低了代码之间的耦合度,便于软件的升级和程序性能的优化。
第4章系统功能模块的设计与实现
4.1关键技术
4.1.1android平台及java语言
以下图表展示了Android操作系统的主要组成部分:
图4.1Android系统架构图
本系统是以java为编程语言,从接口到功能,灵活多变。
主要运用的是Activity之间的相互跳转,然后利用Intent实现多个程序同时运行的效果。
运行中如果某个Activity的画面被另一个Activity所取代,则这个Activity停止。
本系统通过把View类与XML(可扩展标
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 手机 电子书 阅读器 设计 实现 分析 说明书 模板