1.2 设计的目的
在现在的智能手机上,优秀的电子图书阅读器已经成为必不可少的软件。而现在的市场上也存在着几款优秀的阅读器,像iReader、熊猫看书、FBReader、阅尽天下等,不仅界面非常的漂亮,有很好的阅读特效,而且还支持不同格式的电子书,这为用户提供了很大的便利。用户不需要因为阅读不同格式的电子书而下载不同的阅读器,或者将其他格式的电子书转化为txt格式。虽然txt电子书最为常见,但阅读体验并不是最好的,不能插入图片,不能实现超链接,智能手机阅读器的设计是要能够尽可能达到最好的阅读效果,和尽可能多的使用户感到便利,所以支持尽可能多的格式的电子书是一款阅读器优秀与否的标准之一。
而为了能够让用户能够尽可能方便的阅读电子书籍,我将自己开发出一款电子图书阅读器。这款阅读器将支持尽可能多格式的电子书,不单单是能够阅读最常见的txt的格式的电子书。作为一款基础的阅读器,一些功能是最基础也是最重要的,比如说保存书签信息,记录阅读历史,还要求用户能够设置排版格式,即为了满足用户的阅读效果,用户可以改变字体大小、颜色、行间距、阅读背景等,同时还能够对书籍进行归类和整理等等。而这次设计的阅读器最重要的是实现对尽可能多格式的电子书的支持。
在各种软件争相竞争的今天,一个好的软件对于一个手机来说是至关重要的,对于用户来说也是不可或缺的。本软件是基于Android系统的智能是手机开发的一款电子书阅读器,它有选择页面、阅读页面两个大的页面,主页面用于选择文档,阅读页面用于阅读文字。其优越性主要表现在比普通的文档增加了显示进度、触屏翻页等功能。给用户更清晰方便的界面,也是此软件的出发点之一。给人们的阅读和获取信息提供一个捷径。
1.3 设计的思路方法
由于在这次毕业设计之前并没有Android开发的经验,虽然这样,但之前开设的Java课程给了我不少的帮助,这对于Android API的学习有很多的借鉴和帮助,而最重要的我觉得还是对Android的架构和运行过程能够有详细的了解和认识。于是我从图书馆借阅了一部分书籍,同时也在网络上下载了部分相关的代码,希望在理论和实践中加深对这个平台的理解和运用。经过学习和对源码的分析,我发现Android的开发过程相对还是比较好入门和掌握的,只要具有良好的Java基础,做好Android平台的开发还是很轻松的,并不需要拥有太丰富的项目经验就可以入门,而且取得的效果也不错。论文网
而这次对阅读器的设计,由于需要支持对多种格式的电子书的阅读,所以我借鉴了国外的一个开源项目FBReader,将对不同格式电子书的解析看做是不同的Plugin对象,不同的解析过程将通过不同的Plugin进行判别和预处理,再进入到各自的解析类中,例如对于epub格式的解析,将会通过OebPlugin进入到OebReader类进行解析。而最终的解析结果将被放置在BookModel中,最后在屏幕上显示的内容会从BookModel中得到。至于如何对不同格式的电子书的解析,我想只要知道了这种电子书的文件组织形式和编码格式,就可以比较容易得到相应的解析方法。
由于在电子书的阅读过程中要实现不同界面之间的跳转,而在Android开发中,运用最多的就是Activtiy,而界面的布局管理则被放在了layout中,所以页面的设计和编写过程,主要的是在Activity中实现的。在页面的跳转时,可能会传递相关的参数,这可以通过Intent来实现。而在程序的运行过程中,可能有一些操作或参数可能一直用到的,所以我创建了一个类ZLAndroidApplication,继承自Application,同时创建了对对话框、图片、数据库的管理类,这几个类将会运行从始至终存在。在程序开始时,程序就会实例化以上几个类,已达到数据库的初始化,常用字符串、对话框等的初始化,从而使在程序的运行过程中可以随时获得。