`
chenhaodejia
  • 浏览: 111268 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

基于Android手机开发平台的移动数字图书馆服务系统研究

阅读更多

引言  
随着移动网络通讯技术的不断发展,不仅带来了移动终端的多样化,也使得移动终端的服务更加丰富和实用化,除了打电话、发信息以外,基于手机的电子书阅读也日渐普遍,移动数字图书馆就是将图书馆的丰富资源进行管理并发布给用户的一种有效方式。近年来随着谷歌推出Android手机及其操作平台,其开源的操作系统及轻松的开发方式,吸引了众多用户,今年8月,在美国,有数据表明,Android手机的销售量已超过iphone【4】,利用Android手机终端的优势在其上进行移动数字图书馆的建设,从近处讲,易于开发一个基于手机终端的移动数字图书馆,长远来说,还可以促进移动数字图书馆的建设。本文的研究内容就是基于android手机的移动数字图书馆开发,先是构建该系统的一个构架,然后对其功能进行描述,最后对其进行实现并阐述在构建此系统时用到的关键技术。 
1、  移动数字图书馆服务系统构架 
基于Android手机开发平台的移动数字图书馆服务系统的移动客户端即智能手机Android,其与移动数字图书馆服务端通过基于REST的规范协议进行操作,在内部网络中,MLIB服务器与图书馆业务服务系统直接相联,门户首页是移动数字图书馆,在后台服务器最终实现内容数据的转换与对接。基于Android手机终端的移动数字图书馆服务系统架构图【1】如图 1所示:  
  
图1.Android手机终端的移动数字图书馆系统架构
此系统设计主要包括六大模块:
(1)注册与认证:这一模块涉及到读者和图书馆员两个角色,读者需要在用户入口注册认证,图书馆员在读者注册后,管理读者的注册及其数字证书信息,并通过与图书馆的注册认证库关联获得注册信息。 
(2)数字资源发布:这一模块是移动数字图书馆的核心模块,管理员在将丰富的图书馆资源数字化后进行组织和管理,在后台服务器通过导航链接将数字资源发布在Android手机客户端。
(3)检索服务:此系统检索分为标准检索与高级检索功能,基本检索将实现在所有常用检索字段中进行全文检索,设置的常用检索域有标识符,题名,作者,主题词,摘要。检索后返回查询结果;高级检索区分检索域或检索域组合,高级检索域设有标识符,题名,作者,主题词,摘要,分类号,出版者。在本系统中实际的检索范围为本地内容,收藏,书签,所有内容,最终实现检索结果标准化,同时可通过检索实现图书借阅。本系统是可扩展的,在一定程度上还可以加入符合一定规范的参考咨询【1】。
(4)书签与收藏:为了方便读者的阅读,可以在内容页上设置书签,还可以浏览书签列表、编辑书签和删除书签进而达到以及对自己阅读内容的管理。 
 
(5)服务订阅与推送管理:可以订阅图书馆为读者准备的各种信息,读者自己选择订阅的范围,进而内容。对于更多的功能扩展,将通过客户端插件的形式进行扩展。 
(6)图书预约与续借:用户在进行图书搜索时,当发现没有找到自己需要的图书时,可以通过图书预订的方式,向图书管理员提交自己的借阅需要,为图书管理员及时准确的掌握读者需求提供支持。同时还向读者提供续借的功能,当读者不方便去图书馆还书或者想继续阅读书籍的时候,可以向图书馆提出续借【3】。 
2、  基于Android的系统开发框架 
依据系统架构,系统采用 MVC模式进行开发,用户通过在视图层与系统进行交互操作,就可得到控制层调用模型层和视图层完成的需求。此种设计模式,一方面使系统开发更为容易,也有助于系统管理。系统开发框架
图【5】如图2所示:  
 
图  2 系统开发框架图
 
整个系统开发涉及的短信方式和 WAP方式都使用了MVC设计模式。控制器的功能由不同Activity和链接它们的Intent,其中 Activity用于与用户交互,接受用户的请求并展现服务器返回的结果;ContentProvider则实现了系统内数字资源的共享,继承它的子类构成模型层的实体模型层,用于存放在程序中调用到的实体类,Service相当于隐藏在Acticity后面的后台服务,继承它的子类构成模型层中的业务模型层,存放在程序中调用到的业务逻辑。视图通过放入res/目录中的XML文件来实现,这样很好的将显示层剥离,不但增强了程序的可读性,也有利于对于此系统的后期维护。 
3、移动数字图书馆服务系统功能介绍 
针对Android手机终端开发的此移动图书馆服务系统,在主要功能模块的基础上,还可以实现以下功能:
(1)阅读与播放。阅读本系统自定义zbo,zmp格式的资源,在阅读这些资源的的同时,可以进行评论与收藏【1】。本系统支持的内容类型有多媒体内容(自定义的mcf格式),图形图像,声音音乐,影像动画。mcf可以封装所有类型的媒体,对于图形图像,声音音乐,影像动画可以是单独的格式。
(2)内容库管理。本系统的内容库从距离可以分为本地内容库与远程内容库,内容库中的资源主要有图书,照片,影像,音乐,文档。从应用可以分为:①本地收藏:存放在工作区中,和其他路径中的资源(采用虚拟文件的方式保存)。全文索引(可以选择是否建立全文检索);标签维护;笔记维护;评论维护。可以把资源分为:文档,图片,音乐,影像4类进行管理。提供文档阅读和音乐播放器;②个人收藏:支持内部网络上的设备播放本地的资源,包括拥有版权限制的资源,但不能复制资源,需要定义专业协议。目前不实现这一功能;③借阅内容:支持借阅管理的内容资源,是本地收藏的子集;④内容检索:在内容库中进行检索,与检索功能结合在一起【1】。
(3)书签和标签。读者通过书签记录自己的阅读历史,通过书签快速找到自己的收藏资源。一个读者对一个资源只有一个书签,书签对读者而言,一般是私有的,也可以共享或者是分发,本系统缺省设置时是私有的。读者设定书签可以标记自己正在阅读的位置,然后利用标签(tag)对资料进行各种分类,包括资料的汇集、导出参考文献列表。本地资料的标签,也可以同步上传。
(4) 配置。用于修改个人账号信息保护以保护读者利益。当在阅读书籍时,可以配置适宜的阅读模式(白天/夜晚的阅读模式)。
4、系统部分实现界面 
主界面首页是以九宫格方式进行布局,它代表该系统的九个功能,单击每个单元格通过页面跳转来实现该单元格所代表的功能,进入内容库之后,可对文档、图片、音乐、视屏4类资源进行收藏、检索等操作。点击进入本地文件后,可看到有资源收藏的类型,进而对资源进行阅读(主要是文档和图片格式类型),实现界面如下图:  
   
图3 首页及系统内容实现界面
    
图4 本地文件及文本资源阅读实现界面  
另外对于阅读界面,实现基于屏幕阅读优化,是通过格式,字体(阅读字体),空间布局(横排竖排)完成,同时也提供更加友好的操作界面,更好的输入方法。  
4、  关键技术   
内容同步。内容同步分为服务器端内容同步和Android移动端内容同步。服务器端内容同步主要负责本地内容与服务器的内容进行数据同步处理,即数据备份。移动端内容同步将Android移动设备上的内容与本地内容进行同步,采用的解决方法是增量备份策略。  
资源的阅读模式。不同的类型的资源对其进行不同模式的设置,尤其文本与图片类型的阅读是本系统的设计重点,当读者对这些类型的资源进行阅读时,可以对其字体、颜色、背景、跳转、增加书签和浏览书签进行设置,组合适合自己的阅读模式,同时本系统也默认组合了白天/夜晚阅读模式。  
资源的分类与检索。提供良好的检索服务的是实现本系统平台的关键所在,本系统不单在资源类型上进行分类,并在此基础上,可以根据用户需要将资源收藏在本地或者对资源标识符进行收藏,并将其区分为借阅类型和下载类型。  
结束语   
Android智能手机因其直接与内部操作系统交互,具有响应速度快的特点,又因其可配备较大容量的外存储卡,因此与其他手机平台比较,其具有较大的外存,方便读者下载存储在本地。这也是本次项目以Android智能手机为移动图书馆终端的重要原因。可以移动数字图书馆的方案在技术上继承了数字图书馆的架构, 其实现是完全可能的。它因手机的移动性而拥有了时尚、便捷、普及可能性高、服务个性化等特征, 虽然其方案和应用在目前还有很多技术难点和局限性, 但是随着手机市场的不断壮大以及运营模式的不断探索, 未来移动数字图书馆肯定会得到更多更好的应用。  
参考文献:   
[1] 国家图书馆数字媒体技术实验室.面向多网融合的移动数字图书馆服务平台[EB/OL].2010:2-3.  
[2] 吴政.通用手机图书馆系统的设计与实现[J].现代图书馆情报技术.2009(1):101  
[3] 仝茂海.基于Windows Mobile平台的移动数字图书馆系统构建[D]. 复旦大学.2009:19-20.  
[4]GIGAOM .Android Sales Overtake iPhone in the U.S.[EB/OL].[2010-08-02].http://gigaom.com/2010/08/02/android-sales-overtake-iPhone-in-the-u-s.  
[5] 国士工作室.大话企业级Android开发(第五部分)[EB/OL]. [2010-06-02]. http://www.cnblogs.com/guoshiandroid/archive/2010/06/02/1750093.html  
[6] E2ECloud工作室. 深入浅出Google Android[M]. 北京: 人民邮电出版社, 2009. 187-189.  

 

 

:博客涉及的源码请在千寻资源库www.qxzyk.com 下载获取,谢谢支持。

分享到:
评论
3 楼 liubang201010 2012-07-19  
可看看此文http://www.goodu.info/gc/node/379

智能手机和平板电脑的兴起,大大方便了世界的沟通和信息传递。经过精心搜集和统计,这里列出了最好的几本移动开发用书。如果你在进行android或iphone,ipad应用开发,那么一定要读一读这些书。

Android应用开发揭秘
iPhone4与iPad开发基础教程
Android技术内幕:系统卷
iOS编程(第2版)(针对Xcode 4 )
Google Android SDK开发范例大全(第3版)

三个苹果改变了世界。第一个诱惑了夏娃,第二个砸醒了牛顿,第三个在史蒂夫-乔布斯的掌中。苹果公司的IOS系统和iphone手机风靡世界.2012年6月Google的Android在全球的市场份额达到了59%. 全世界掀起了Android风暴.我们没有理由不去研究移动开发,这足可以让人站在技术的前沿.
2 楼 chenhaodejia 2012-05-01  
心灵花园2010 写道
你好,问下服务端该怎么去搭建?

什么意思?
1 楼 心灵花园2010 2012-04-17  
你好,问下服务端该怎么去搭建?

相关推荐

    初学Android图书馆管理系统项目

    Android操作系统作为当前最受广泛应用的移动操作系统,其强劲的性能使得如今各种手机应用软件正实现着对传统服务业和原有消费行为的颠覆。本文将基于Android操作系统设计和开发一套图书管理借阅系统,以满足现代校园...

    毕业设计,基于SpringBoot+Android+MySql开发的移动校园App,内含完整源代码,数据库,安卓客户端,毕业论文

    随着移动互联网的发展,智能手机的普及,无线数字校园系统也是高校数字校园建设的发展方向,针对学生的生活和学习需求问题,从学生的角度出发,为学生提供了一个学习、生活和交流的服务平台,可以提高学校信息传播和...

    Android程序设计基础

     作为基于Linux的开源手机平台,Android包括一部手机工作所需的全部软件——操作系统、用户界面和应用程序,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌公司与开放手机联盟合作开发了Android,这个联盟...

    Android基础教程

     《Android基础教程(第3版·修订版)》是一部关于Android开发的基础教程,采用Pragmatic系列图书一贯由浅入深、循序渐进的方式讲解了Android程序设计的核心概念和技术。书中不仅结合数独游戏开发案例形象生动地...

    JAVA上百实例源码以及开源项目

    此时此景,笔者只专注Android、Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景! Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这...

    JAVA上百实例源码以及开源项目源代码

    此时此景,笔者只专注Android、Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景! Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这...

    java开源包101

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    《程序员》杂志2012年第1期.pdf (免费积分下载)

    我们最熟悉的是技术平台(或称开发平台、计算平台),指软件应用能够在其上运行的软件和硬件环境,硬件体系结构、操作系统、API、运行库、编程框架等都是常见的平台。随着Web的普及,浏览器及其插件如Flash和...

    java开源包1

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包11

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包2

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包3

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包6

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包5

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包10

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包4

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包8

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

    java开源包7

    AutoTips是为解决应用系统对于【自动提示】的需要(如:Google搜索), 而开发的架构无关的公共控件, 以满足该类需求可以通过快速配置来开发。AutoTips基于搜索引擎Apache Lucene实现。AutoTips提供统一UI。 WAP浏览器...

Global site tag (gtag.js) - Google Analytics