当前位置: 简表范文网 > 专题范文 > 公文范文 >

基于Android系统平台设计和实现电子书阅读应用,优秀专业论文

| 来源:网友投稿

下面是小编为大家整理的基于Android系统平台设计和实现电子书阅读应用,优秀专业论文,供大家参考。

基于Android系统平台设计和实现电子书阅读应用,优秀专业论文

 

 于 基于 Android 系统平台设计和实现电子书的阅读应用

 摘要:首先对 Android 系统进行深入的分析和研究,与传统操作系统进行比较,突出 Android 系统优势和应用前景。然后,基于 Android 系统平台设计和实现电子书阅读应用,论文对其关键技术进行分析,提出优化解决方案,改变传统文本显示方式,将图像和文字有机结合在移动设备界面显示。

 关键词:

 Android;电子书;SQLite 数据库

 Design and implementation of e-book reading application based on Android platform Abstract:

 First, the Android system, in-depth analysis and research, compared with the traditional operating system, highlighting the advantages of the Android system and application prospects. Then, based on the Android platform design and implementation of e-book reading application, the paper analyzes its key technologies, optimization solutions put forward to change the traditional text display, the combination of images and text displayed on a mobile device interface.

 Keywords: Android; books; SQLite database 中图分类号:TP 311.5 0. 引言 目前, 网络在线阅读和手机阅读已经成为人们两大新型阅读方式。电脑和手机移动设备成为主要的媒介,但是电脑体积大,重量沉,不能成为优秀的移动阅读终端。手机电子书阅读器成为发展趋势。作为智能手机的先锋 Android 系统,用户希望其提供尽可能多,尽可能实用的功能。电子书阅读器就是其中之一。

 传统的手机电子书阅读器只能读取规定格式文本,如 TXT、CHM、JAR 等,用户在电子资源选择方面受到约束,同时电子书缺乏图像显示,单一枯燥。用户希望在 Android 系统上获得一款更加灵活、生动、高效的电子书阅读器。

 1 Android 简介和 与传统操作系统的 比较研究 Google 公司于 2007 年 11 月推出开源手机操作系统 Android,该平台由操作系统、中间件、用户界面和应用软件组成 [1] 。它的推出解决了移动终端封闭的劣势,是目前行业中首个完整、开放、免费、高质量的手机操作系统。它不仅是一

 个移动设备操作系统,更是一个开源的体系架构。其开放了基于 Linux 内核以上的开发工具,保证了系统的可移植性和多样性 [2] 。

  Android 系统包含以下重要特性 [3] :

  应用程序框架:支持组件的重用与替换。

  Dalvik 虚拟机:为移动设备进行优化。

  内部集成浏览器:该浏览器基于开源的 WebKit 引擎。

  优化的图形库:包括 2D 和 3D 图形库,3D 图形库基于 OpenGL ES 1.0。

  SQLite 数据库:完成结构化的数据存储。

  多媒体支持:包括常见的音频、视频和静态印象文件格式。

  丰富的开发环境:包括设备模拟器,调试工具,内存及性能分析图表,和 Eclipse 集成开发环境插件。

 当前主要的手机系统包括:iPhone, Symbian,Windows Mobile, BlackBerry,Android 等,它们各有特点。下面表1 将就系统内核、应用开发语言、系统浏览器、后台、系统开源性、系统优势和劣势等方面进行比较。

 表1 手机操作系统的特点

  iPhone Symbian Windows Mobile BlackBerry Android 系统内核 Darwin (Mach/BSD)

 Symbian OS Windows CE Proprietary BB OS Linux

 应用开发语言 Objective-C C++ C/C++ JAVA JAVA 浏览器 Safari浏览器 第三方浏览器 IE 浏览器 第三方浏览器 WebKit 浏览器 后台运行 否 可以 可以 可以 可以 系统开源 否 否 否 否 是 优势 系统成熟稳定,界面友好,简单灵动。功能设计越来越丰富。光、红外、加速度、湿度感应更加人性化。

 实时性、多任务的纯 32位操作系统,功耗低、占用内存少,适合移动设备。标准化的开放平台,系统能力和易用性突出。

 界面友好,易于掌握,信息资料可以和PC 机共享,应用软件资源丰富。

 支持多任务处理,宽大的屏幕和便于输入的QWERTY键盘。

 界面友好,具备触摸屏、高级图形显示和上网功能,支持网络应用,可以无缝接入Google应用和第三方软件。

 劣势 系统占用存储空间大。不支持第三方软件,缺乏商务功能,技术水平需提高。

 对主流的媒体格式的支持性较差,存在软件兼容性和证书问题。

 Windows CE占用大量系统资源。容易产生系统瘫痪。

 在多媒体播放方面的功能不足。

 网络安全性欠缺,不支持中文。

 由表 1 可知,传统流行的手机操作系统缺乏开放性,不能很好的满足市场的需求。Android 是基于 linux 内核的开源操作系统,架构简洁,为开发低成本、

 个性化的手机应用提供了平台,市场发展前景看好 [4] 。

 2 系统需求分析 1)Android系统手机客户端:

 获得电子资源可以通过SD卡拷贝,也可以通过网络下载来获得电子书目录和数据文件包。在需要连接网络下载电子书时,用户要登录进行身份验证。用户成功登录后,在应用程序中显示网络电子书首页面,选中书名或类型名进入相应电子书列表。在电子书列表中,选中某一本电子书,查看书籍简介确定是否要下载该书,点击下载电子书。用户也可以根据书名、作者等信息进行书籍查询。电子书数据中,包括图片(jpg,bmp等格式)和文字(txt格式),将图片和文字结合,分页显示。在本地阅读电子书时,可以按照书名查询本地电子书。在网络下载中,可以根据书名查询网络电子书。手机客户端需求如用例图1。

 图 1 Android 客户端用例图 2) Web 服务器端 管理员通过PC机登录系统,进行身份验证。管理员成功登录后,可以对个人信息进行变更;对注册成功的网络用户,进行监督和支持。显示用户名、电话号码、注册时间、下载次数等信息。对于日志中出现问题的用户,进行禁用和解禁操作。可以上传电子书,填写电子书基本信息;修改电子书信息,删除电子书信息和文件等。电子书存储于绝对路径硬盘上,与数据库分离,保证数据安全性。服务器用例图如图2。

  图 2 Web 服务器端用例图 2 系统架构设计 本系统分为两部分(图3),一部分Android手机客户端与服务器交互(C/S架构),另一部分Browser浏览器端与服务器交互(B/S架构)。所以在系统整体设计上采用两种架构相结合的方式——扩展化的B/S架构。

 图 3 系统网络框架图 系统的客户端定位于Android手机平台。采用HTTP作为通讯协议,JSON为数据传输格式。根据应用活动都运行于主线程的特点,采用多线程技术来解决系统通讯和响应等待的问题。针对通信安全的问题,将MD5数据加密算法引入到Android应用系统平台,对系统敏感信息进行加密和解密处理。系统的电子书基本信息和电子书分页信息都保存在SQLite数据库里,电子书图片和文字文件存储在Android平台虚拟存储设备sdcard中。

 系统的客户端分为五大模块进行设计开发:

 1.通讯模块:负责与服务器建立通讯。发送客户端请求和接受服务器信息响应和数据传输。

 2.解析模块:主要用来解析电子书数据流,根据解析元素的不同类型封装成不同的数据对象,组成相应的电子书样式设计和图文内容。

 3.加解密模块:负责对用户个人信息进行加密、解密,确保通讯数据的安全。

 4.数据模块:定义了整个客户端中大部分的数据类型和对象实体。

 5.应用模块:主要实现是客户端和用户交流的接口、用户界面、活动等。应用模块又分为几大功能,包括电子书下载,阅读,管理和用户账户管理。

 Android移动终端模块设计如图4所示。

  图 4 电子书系统客户端模块设计图 4 系统具体设计与实现 4.1 Android 客户端设计和实现 电子书阅读系统中手机移动终端主要实现电子书请求,下载,保存、本地显示和管理功能,在无线网络通信中保证数据传输的安全性和稳定性。

 根据 Android 终端模块化分析和设计,系统开发采用 Eclipse 平台,添加Android 开发 ADT 插件,创建 Android 工程以及测试模拟器。Android 工程下主要有 src、gen、assets、res 等文件夹。src 文件夹存放 java 源代码,实现程序功能;gen 文件夹存放编译器生成文件,采用系统自动维护方式;assets 文件夹存放发布所需文件,支撑系统发布;res 文件夹存放系统资源文件,其中分为三类,图像文件存储在 drawable 文件夹下;程序界面布局存储在 layout 文件夹下;界面中文文字、属性值存储在 values 文件夹下。工程依赖 AndroidManifest.xml 文件完成系统配置,并在 default.properties 文件中记录系统信息。

 针对 Android 平台电子书系统,在 e-bookClient 工程中对 java 源码按功能不同划分为五个文件夹,存放对应功能模块源码,提高系统安全性和易维护性(图

 5)。

  图 5 Android 客户端开发结构图

 e-bookClient 工程五个模块文件夹为应用模块、控制模块、数据库、文件工具、系统工具。系统用户信息和电子书信息保存在 SQLite 数据库中。电子书资源保存在 SD 卡中,对应 Android 平台虚拟文件存储设备 sdcard。

 Android 平台电子书系统控制模块分为四个部分:解析模块、加解密模块、数据模块和通信模块。

 1.通讯模块:负责与服务器建立通讯。发送客户端请求和接受服务器信息响应和数据传输。

 2.解析模块:主要用来解析电子书数据流,根据解析元素的不同类型封装成不同的数据对象,组成相应的电子书样式设计和图文内容。

 3.加解密模块:负责对用户个人信息进行加密、解密,采用传统 MD5 方法进行设计和实现,确保通讯数据的安全。

 4.数据模块:定义了整个客户端中大部分的数据类型和对象实体,以系统工具类进行数据过滤封装和处理,为其他模块调用提供接口和服务。

 (一)解析模块 对于客户端接收到的电子书 Zip 压缩包,系统需要提供解析,并调用 Android平台控件实现电子书显示和控制。Android电子书格式设计集合了HTML和XML的优点,易于理解,阅读和编写,实现轻量级传输。工程架构中解析模块实现电子书解析,界面框架生成功能。

 在用户第一次请求阅读电子书时,将 Zip 格式电子书解压缩生成相应名保存在 sd 存储卡中,降低系统重复工作量。同时将压缩包硬件删除,节省存储卡和内存空间。读取电子书文件夹中文本文档,进行显示编译。将文本文件写入文件流,读取文件流,对标签元素进行解析,并对标签属性进行设置,对于属性值和控件属性值类型不同情况,根据约定进行转换和验证。

 工程实现功能函数 onCreateLayout()、onCreateText()、onCreateImage()、onCreateNote()等,函数中创建 Android 平台适用的控件,对<Layout>、<Text>、<Image>、<!-- --!>等标签进行逐一的解析。

 下面对解析函数和方法进行说明。

 将 txt 文本写入到缓存,以 StringBuffer 变量存储和调用,然后创建字符变量对 StringBuffer 进行遍历和解析。

 读入标签开始字符为”<”时,从字符串下一个字节开始查找”>”标签结束符,如果遇到结束符,则将开始符和结束符之间的字符串保存,并对其进行深入解析。将此字符串以空格分离,并将每个字符串存入字符数组,对字符数组进行遍历。如果字符数组第一个值为“Layout”表明此标签为布局设计,调用onCreateLayout()方法,将字符串数组作为参数。如果字符串数组第一个值为“Text”表明此标签为文本标签,调用 onCreateText()方法,将该数组作为参数,对每个值进行解析。

 同理,对于第一个值为“Image”的字符串数组,调用 onCreateImage()方法进行解析。

 模块开发中主要解决两方面问题。一方面是图像嵌入电子书显示,另一方面是电子书图文数据进行分页和显示,这两方面又是相互关联的。

 首先,基于图片和文本的结构关系,考虑到无线网络传输速率,图片为小容量图片,将图片为设计为独立组件<ImageView>添加至电子书布局中,保证了图像的完整性和独立性。根据文本位置和界面布局,计算出图片显示位置,实现图片和文件的多种拼接方式(如紧密环绕型、换行连接型等)。

 其次,通过系统参数获得屏幕尺寸和分辨率,当电子书一页被填充满后,保存最近的组件参数,页码计数器加一,创建电子书新一页,并以保存的电子书组件参数,继续添加文本文字和图像。最后将页面计数器数值和该电子书基本信息一同保存在 SQLite 数据库中。

 (二)通信模块 通讯模块主要实现客户端请求的发送和接受。Android 电子书客户端将数据请求和客户端信息添加至 JSonObject,并以输出流方式发送给服务器。当服务器接收处理后,返回数据流包含结果 JSon 字符串。服务器发送电子书 Zip 包,Android 客户端在接受到 Zip 包后,解压缩保存到文件系统中。

 String filePath="/sdcard/"+bName; ZipInputStream zis = new ZipInputStream(conn1.getInputStream());

 ZipEntry entry; if(zis.available()==1) {

 File dFile=new File(filePath);

 if(dFile.exists()) { String[] fileList= dFile.list(); int num=delete(filePath,fileList); if(num==0) dFile.delete();

 }

  dFile.mkdir();

  while ((entry = zis.getNextEntry()) != null)

 {

  String entryPath=filePath+"/"+entry.getName();

 Convert convertRes = new Convert();

  byte[] buf = convertRes.getData(zis);

  File file=new File(entryPath);

  file.createNewFile();

  BufferedOutputStream bos =

 new BufferedOutputStream(new FileOutputStream(file));

 bos.write(buf);

  bos.close();

 }

 }

  return filePath;

 在Android系统中,采用JAVA语言开发,引用Java 标准HTTP类库和方法。Android电子书系统将下载信息封装成JSON对象,传给Http属性。

 URL URL=new URL ("http://localhost:8080/.........

推荐访问:基于Android系统平台设计和实现电子书阅读应用 优秀专业论文 电子书 优秀 论文

热门文章

2022年大学生档案自我鉴定300字10篇

2022年普通大学生个人社会实践实习报告精选服务社会做好思想准备和业务准备,公司内部电脑系统都是统一英文系统,就要求自己以职场……[详细]2022年党员思想汇报例文两篇【完整版】所以在以后的学习和生活中,经历过苦难的中国,工作以及生活中,特别是通过学习党章党纪……[详细]企业员工服务意识培训心得体会

追梦筑梦圆梦演讲稿

最近发表了一篇名为《追梦筑梦圆梦演讲稿》的范文,感觉很有用处,这里给大家转摘到。演讲稿特别注重结构清楚,层次简明。在日新月异的现代社会中,在很多情况下需要用到演讲稿,如何写一份恰当的演讲稿呢?下面是小编为大家整理的追梦筑梦圆梦演讲稿,希望能够帮助到大家!追梦筑梦圆梦演讲稿1尊敬的

《********大宣讲特别节目》直播观后感

最近发表了一篇名为《2022《********大宣讲特别节目》直播观后感【精选】》的范文,感觉写的不错,希望对您有帮助,希望对网友有用。,安全,在学校里,在校外,安全这个词恐怕是再熟悉不过了吧,让将安全铭记心中,时进刻刻都做到安全,让父母不再操心,让长辈不再担心,让安全从我做起,从身边

2022年度有关安全学习心得合集(2022年)

本页是最新发布的《有关安全学习心得》的详细范文参考文章,感觉很有用处,看完如果觉得有帮助请记得(CTRL+D)收藏本页。有了一些收获以后,可以记录在心得体会中,这么做能够提升的书面表达能力。相信许多人会觉得心得体会很难写吧,下面是小编为大家收集的有关学习心得,供大家参考借鉴,希望可以帮

2022员工培训学习心得体会范本合集(范文推荐)

最近发表了一篇名为《员工培训学习心得体会范文》的范文,感觉写的不错,希望对您有帮助,为了方便大家的阅读。培训能让员工不断的提高,并清楚的意识到自己的缺点。经过员工培训,你一定有许多的收获,不妨来写一篇员工培训心得。你是否在找正准备撰写“员工培训心得体会范文”,下面小编收集了相关的素材,

2022年度中考优秀作文素材别样美三篇

最近发表了一篇名为《中考优秀作文素材别样的美精选三篇》的范文,好的范文应该跟大家分享,看完如果觉得有帮助请记得(CTRL+D)收藏本页。雨过天晴,花坛边上,几只蜗牛缓缓的爬行着,留下一道彩虹般的痕迹,那柔软的外面,是坚硬的外壳,那也是一道的美丽。下面是小编为大家收集整理的关于素材别样的美精

2022不期而遇作文600字初中记叙文

《不期而遇作文600字初中记叙文》是一篇好的范文,感觉很有用处,希望对网友有用。,美词,像是袭袭的寒风慢慢轻掠大地,刺刺的,一缕****的阳光下有一小缕的橘红色静静的生长。下面是小编为大家收集整理的关于不期而遇600字初中记叙文,一起来看看吧!不期而遇作文600字篇一苏轼有语人间有味是清欢,或许正是

2022年度幼儿园清明节主题活动总结范本

《2022幼儿园清明节主题活动总结范文【精选】》是一篇好的范文,感觉很有用处,为了方便大家的阅读。,又称踏青节、行清节、三月节、祭祖节等,节期在仲春与暮春之交。清明节源自上古时代的祖先信仰与春祭礼俗,以下是小编整理的2022园清明节主题总结,希望可以提供给大家进行参考和借鉴。2022幼儿园清明节

建团百周年活动策划

《2022建团百周年活动策划【精选】》是一篇好的范文,感觉很有用处,希望大家能有所收获。党的领导是共青团顺利发展的关键所在,无论是中国早期青年团的建立,还是中国共青团的正式成立,都离不开党的领导。下面小编为大家整理了2022建团百周年策划【精选】的相关内容,以供参考,希望给大家带来帮助!20

以小见大作文500字范本(范文推荐)

最近发表了一篇名为《以小见大作文500字范文【精选】》的范文,感觉写的不错,希望对您有帮助,重新编辑了一下发到。一件事情的发生,离不开时间、地点、人物、事情的起因、经过和结果这六方面,即常说的六要素,只有交待清楚这几方面,才能使读者对所叙述的事,有个清楚、全面的了解。这里小编

大一暑假社会实践报告(精选文档)

本页是最新发布的《2022大一暑假社会实践报告》的详细范文参考文章,感觉写的不错,希望对您有帮助,希望大家能有所收获。这个暑假过得是否充实呢,有些小伙伴在假期中参加了实践,那么如何做一份报告呢?下面是小编整理的2022大一暑假社会实践报告,仅供参考,希望能够帮助到大家。2022大一暑假社会

小学品德教师期末工作总结范本合集

最近发表了一篇名为《小学品德教师期末工作总结范文》的范文,感觉很有用处,重新整理了一下发到这里[http: www fwwang cn]。时光飞逝,如梭之日,回顾这段时间的工作,一定有许多的艰难困苦,是时候在工作总结中好好总结过去的成绩了。下面小编在这里为大家精心整理了几篇小学教师期