《开题报告-基于Android的电子书阅读器的设计与实现.docx》由会员分享,可在线阅读,更多相关《开题报告-基于Android的电子书阅读器的设计与实现.docx(7页珍藏版)》请在课桌文档上搜索。
1、1.结合毕业设计情况,根据所查阅的文献资料,撰写2000字左右的文献综述:文献综述一.选题的目的和意义在这个信息化的时代,IT业已经成为世界发展的主流,我们对信息技术的依赖远远超过了对我们自己的依赖,计算机和手机已经成为我们日常生活中不可缺少的获得信息的渠道。正因为如此,各种各样的软件层出不穷,我们的生活也因为各种各样的软件变的更有滋有味。不缺乏娱乐性,也不缺乏教育意义,让我们从这些软件中受益匪浅,使我们看到了相比以前的巨大进步。同时,随着科技的发展,计算机越来越精致,手机也越来越智能化,所以我们的依赖性也越来越大,越来越离不开这些给我们提供日常信息的工具。手机也已不再仅仅是简单的人与人通话的
2、工具,而是在很大程度上成为了我们获取信息的一个更好的渠道。一个好的软件,能够标志一个手机品牌的地位。所以,开发一款好的手机软件是相当必要的。以前我们看看杂志,小说都要去图书馆借阅,而且时间有限,很不方便;而现在是在电脑上或者手机上看杂志,看小说,文档。以此看来,一个好的手机阅读器软件的开发是相当有必要的。并且选择Android作为开发平台,也是考虑到了近年来Android平台的大热以及应用商店的多元化,相对于IOS的不开源以及使用设备的单一,基于Android设计一款电子书阅读器软件是非常好的市场条件的。二国内外研究现状维基百科中,电子书阅读器是一种主要设计用来阅读电子书和杂志的移动电子书软件
3、,我国新闻出版署关于发展电子书产业的意见中,将其定义为植入或下载数字文化、图片、声音、影像等信息内容的存储介质和显示终端与一体的手持阅读器软件。目前为止,国内外市场上出现的电子书阅读器软件有百余种,比较受欢迎的专门电子书阅读器产品主要有亚马逊的KindleNOOK,fbreader的自带阅读软件。还有国内的阅读星、爱读掌阅、IReader、91熊猫看书、QQ阅读器、百度阅读,林林总总还有很多。功能基本大同小异,都具备读取txt格式电子书并进行阅读的功能,有些还带有朗读自动翻页或者是线上订阅书籍等功能。三.理论与实践的意义随着社会不断进步与发展,生活节奏不断加快,信息已经成为我们生活中不可缺少的
4、一部分,使用平常的书本阅读已经满足不了我们对信息大量且繁杂的需求。而手机已经成为我们生活中的主要构成部分,使用手机作为承载书本内容的新平台已是大势所趋,大众需要一款可以在手机上打开电子书并且有良好阅读体验的软件。通过几个月的观察,发现几乎所有的人都有智能手机,而且几乎有一半以上的人用手机来阅读资料,并且大部分都是AndrOid手机。所以萌发了打造一款属于自己的电子书阅读软件,还可以附加上浓浓的个人风格,在老版的阅读软件基础之上进行改进。手机阅读为读者提供了诸多便利的阅读渠道和方式,手机用户可以不受时间、空间的限制,即使进行阅读,现在越来越多的手机用户用手机进行数字化信息资源的阅读,各类的手机阅
5、读电子书软件的下载量也在不断的攀升,甚至曾经一度超过了手机游戏的下载量,这足以说明手机电子书阅读器在当今的手机应用程序之中的霸主地位。手机阅读改变着人们传统的阅读方式,手机阅读器通过不断的升级与更新,使其功能更加强大,各种手机电子书阅读器的特色功能各有千秋,手机电子书的发展大大推动了全民阅读的狂潮,也更加符合我国国民的阅读习惯和阅读需要。参考文献:1明日科技.Android从入门到精通M.北京:清华大学出版社,2013.344.2软件开发联盟.Android实战应用M.北京:机械工业出版社,2012.250.3明日科技.Java从入门到精通M.北京:清华大学出版社,2013.100300.4余
6、志龙.AndroidSDK开发范例大全M.北京:人民邮电出版社,2010.113.5吴亚峰.Android核心技术与实例详解M.北京:电子工业出版社,2010.22220.6李芝兴.Java程序设计之网络编程M.北京:清华大学出版社,2009.220.7张白一,崔尚森.面向对象程序设计M.西安:西安电子科技大学出版,2006.130280.8张孝祥.Java就业培训教程M.北京:清华大学出版社,2007.235.9李兴华.Java开发实战经典M.北京:清华大学出版社,2009.70230.10李钟尉,周小彤.Java从入门到精通M.北京:清华大学出版社,2010.87120.11孙鑫.Java
7、Web开发详解M.北京:电子工业出版社,2006.7480.12阎宏.Java与模式M.北京:电子工业出版社,2002.239256.13王世江,盖索林.GoogleAndroid开发入门指南M.北京:人民邮电出版社,2009.门02.14李刚.疯狂Android讲义M.北京:电子工业出版社,2011.2276.15刘卫国.Android的架构与应用开发研究J.计算机系统应用.2008,L4344.16 Android官方网站http:/developer,android,com.17 fbreader官方网站http:/fbreader.org.2.本课题要研究或解决的问题和拟采用的研究手段
8、(途径):一.研究问题经过观察日常生活中人们阅读书籍的习惯,并在现行业务流程和数据分析的基础上基本上确定了系统的功能,设计也基本上达到了目标。根据软件设计的步骤,需求分析是软件设计成功的基础,也是必不可少的步骤。同时.,也对软件的设计提出了具体的要求。在做足了充分的调查研究之后,基本可以确定软件的功能界面需求如下:(1)刚打开软件时的酷炫欢迎动画界面。(2)在没有阅读记录情况下点击右上角菜单栏弹出本地文件选项。(3)帮助用户扫描SD卡中所有的txt电子书并且显示出来。(4)可在本地文件系统中浏览相应电子书并且添加到书架页面上显示。(5)点击书架上的电子书会出现电子书书名,阅读进度,电子书绝对路
9、径等(6)用户可以自行选择是否删除书架上的电子书。(7)阅读界面,用来阅读文档的主界面,是整个阅读器设计核心部分。(8)书签功能界面,用来创建新书签和点击书签并跳转到书签所在位置,也可以选择删除书签。(9)快速导航界面,用户可以根据需要选择不同的背景图片,亮度,以及开关夜间模式,使阅读变得更为个性化。(10)字体设置功能,用户可以根据需要选择不同的字体大小。(U)默认隐藏所有的设置界面,在用户需要的时候点击屏幕中心,会通过上下分屏的方式显示各种设置按键。(12)分享功能,若用户满意本软件并愿意推广可以通过微信微博等方式分享给他人。二.拟采用的技术Java本系统是以Java为编程语言,Java是
10、一种面向对象的语言,从接口到功能,灵活多变,语言等级较高,易于开发者掌握。软件主要运用的是利用发送Iment的办法在Activity之间的相互跳转,来实现不同操作界面之间的无缝切换。运行中如果某个Activity的画面被另一个Activity所取代,则这个Activity停止。本系统通过把View类与XML(可扩展标记语言)将用户界面放置在视图窗口,然后注册事件来完成相应的功能。例如,当视图要处理用户的点击事件的时候,Android就要向FrameWork注册一个OneliCkLiStener等。本系统中触发事件都是通过这种来实现的。JaVa语言是一种简单易用,面向对象的,可移植的语言。它具有
11、很多的优越性和特点,比如:平台无关性,安全性,面向对象,健壮性等等。本系统就是在AndrOid平台上使用JaVa语言完成的。Android四大组件Activity是Android程序与用户进行交互的窗口,提供了和用户交互的可视化界面,是Android构造块中最基本的一块,它需要为保持各界面的状态,做很多持久化的事情,妥善管理生命周期以及一些跳转逻辑。Service是能够在后台执行长时间运行操作,并且不提供用户界面的应用程序组件,服务于ACtiVity,封装有完整的逻辑功能实现,接受上层指令,接受相关的事务,定义好intent提供同步和异步的接口ContentProvider是Android提供
12、的第三方应用数据的访问方案,也是不同应用程序之间互相共享数据的唯一方式,可以像数据库一样进行选择排序,屏蔽内部数据的存储细节,向外提供统一的接口模型,大大简化上层应用,对数据的整合提供了更方便的途径。BroadcastReceiver,接受一种或多种intent作为触发事件,类似与一个针对于Android系统的全局监听器,可以在不同进程(程序)间进行消息互通,也可以方便几大组件间的信息和数据交互.从设计模式上来讲也是IOC的一种应用方式.其实Android四大组件本质上就是为了实现在移动或者嵌入式设备上的mvc架构,他们之间是相互依存又相互补充的关系。sqlite3数据库Sqlite3是谷歌为
13、自家Android平台上提供的一个轻型的关系型数据库,除了支持varchar(n)(可变字符),char(n)(定长字符)等数据特性外,还支持空(NULL),整型(INTEGER),文本类型(TEXT)等数据类型。它的特点入下:轻量级(只需带上很小的动态库,就能享受它的全部功能)、独立性(使用不需要安装,在部署的时候能省去很多麻烦)、隔离性(数据库中所有的信息都包含在一个文件内,方便管理和维护)和安全性(可以同时读取数据,但同时只有一个能够写入数据)等特性。三.研究手段1 .查阅文献充分利用图书馆、利用电子资源和网络等资源,完成论文部分。2 .软件工程软件工程中软件开发的方法。严格按照数据库管理信息系统开发的流程,从需求分析开始,弄清当前系统的工作流程、存在的问题,提出解决的方法;对新系统进行逻辑设计。包括数据库流程、数据字典的描述等等;进行系统总体设计,包括功能模块设计、数据库设计等;最后进行详细的代码设计、用户界面设计,并进行一定的测试。3 .小组讨论与同学进行讨论、请教项目经理等,解决遇到的技术问题指导教师意见:指导教师:年月0所在系审查意见:系主任:年月B