基于Android的移動本地個(gè)人數(shù)字圖書館系統(tǒng)探究
摘要:隨著移動通信技術(shù)的發(fā)展,移動本地個(gè)人數(shù)字圖書館成為圖書館發(fā)展的一種新的模式。
本文引用地址:http://m.butianyuan.cn/article/149971.htm本文針對移動圖書館的發(fā)展現(xiàn)狀,提出基于Android 和胖客戶端/服務(wù)器模式的移動本地個(gè)人數(shù)字圖書館,并詳細(xì)分析Android 的工作機(jī)制和胖客戶端/服務(wù)器模式在移動本地個(gè)人數(shù)字圖書館構(gòu)建的優(yōu)勢。
0 引言
隨著移動通信網(wǎng)絡(luò)和移動終端的發(fā)展,移動本地個(gè)人數(shù)字圖書館應(yīng)運(yùn)而生,利用手機(jī)移動平臺拓展圖書館的服務(wù)成為圖書館的發(fā)展方向。用手機(jī)上網(wǎng)的用戶逐漸增加,基于短息平臺和WAP 網(wǎng)站方式是目前數(shù)字圖書館移動信息服務(wù)的主要模式,這兩種模式都存在一定的局限。隨著智能手機(jī)的發(fā)展,各種手機(jī)系統(tǒng)紛紛涌現(xiàn):Nokia 的Symbian,Microsoft 的Windows'MC,蘋果的IOS和 Google的Android,為移動終端的應(yīng)用開發(fā)提供很好的系統(tǒng)平臺。提高了直接訪問網(wǎng)絡(luò)能力,可實(shí)現(xiàn)斷網(wǎng)后儲存數(shù)據(jù)的操作。
Android 是Google 開發(fā)的一種開放性的移動綜合平臺。它包括Linux 內(nèi)核、Android 運(yùn)行時(shí)庫和其他庫層、應(yīng)用框架、應(yīng)用程序。用Android 進(jìn)行移動本地個(gè)人數(shù)字圖書館的開發(fā)研究,可促進(jìn)系統(tǒng)的創(chuàng)新,降低開發(fā)成本,創(chuàng)造出有特色的數(shù)字圖書館。
1 圖書館移動服務(wù)技術(shù)應(yīng)用類型
1.1 手機(jī)信息服務(wù)
手機(jī)信息服務(wù)包括傳統(tǒng)的SMS(Short Messaging Service,短信息服務(wù))、MMS(MultimediaMessaging Service,多媒體短信息服務(wù))。圖書館運(yùn)用手機(jī)信息服務(wù),提高了圖書館的工作效率。手機(jī)短信服務(wù)快捷方便;收短信免費(fèi),發(fā)短信費(fèi)用低廉;可隨時(shí)隨地收發(fā)短信,當(dāng)對方的手機(jī)不能接收短信時(shí),發(fā)出的短信可以暫存在服務(wù)器中;可實(shí)現(xiàn)用戶和管理員的雙向互動。
短信服務(wù)雖然方便、經(jīng)濟(jì)、有效,但是也存在很多不足,手機(jī)短信文字長度限制在140 個(gè)字節(jié),相當(dāng)于140 個(gè)字符,或70 個(gè)漢字;只能進(jìn)行簡單的查詢。
1.2 瘦客戶端/服務(wù)器類型
瘦客戶端/服務(wù)器類型是指客戶端通過瀏覽器與服務(wù)器端建立聯(lián)系,瘦客戶端是指使用瀏覽器來提供應(yīng)用程序(以HTML 定義的)用戶界面的執(zhí)行環(huán)境的客戶端應(yīng)用程序。目前流行的技術(shù)是基于WAP 和WML(Wireless Markup Language,無線標(biāo)記語言)的WAP 網(wǎng)站。瀏覽器具有一定的安全性、數(shù)據(jù)處理和狀態(tài)管理功能,但它只能通過Cookies 存儲少量數(shù)據(jù),致使與客戶端環(huán)境交互能力低,功能的擴(kuò)展收到制約,只能實(shí)現(xiàn)簡單業(yè)務(wù)操作,另外,并須聯(lián)網(wǎng)進(jìn)行所有的操作,受到網(wǎng)絡(luò)連接的限制。
1.3 胖客戶端/服務(wù)器類型
胖客戶端是在客戶端機(jī)器上安裝應(yīng)用軟件,與瘦客戶端不同,客戶端同服務(wù)器斷開連接后,依靠客戶端存儲的少量數(shù)據(jù)也能夠?yàn)閼?yīng)用軟件所用,并獨(dú)立完成部分業(yè)務(wù)操作。胖客戶端模式將應(yīng)用程序處理分成了兩部分:由用戶的桌面計(jì)算機(jī)執(zhí)行的處理和最適合一個(gè)集中的服務(wù)器執(zhí)行的處理[2].它的優(yōu)點(diǎn)是操作和充分利用本地存儲資源,可離線工作,響應(yīng)速度快,網(wǎng)絡(luò)傳輸量小,安全性高;它的缺點(diǎn)是目前移動終端存在有多種操作系統(tǒng)共存的局面,需要為不同的平臺開發(fā)相應(yīng)軟件,在客戶端的操作痕跡較多,部署和更新很復(fù)雜。
為了解決胖客戶端開發(fā)的困難,目前有兩種常見的解決方案:軟件解決方案,直接開發(fā)智能手機(jī)操作系統(tǒng)從底層實(shí)現(xiàn)上就實(shí)現(xiàn)統(tǒng)一,或者提供運(yùn)行在不同智能手機(jī)操作系統(tǒng)之上的虛擬機(jī),應(yīng)用開發(fā)在統(tǒng)一的虛擬機(jī)上完成,借此來降低跨平臺開發(fā)的難度。
1.4 智能客戶端客戶端/服務(wù)器類型
智能客戶端是易于部署管理的應(yīng)用程序,通過統(tǒng)籌使用本地資源和到分布式數(shù)據(jù)資源的只能連接,提供適應(yīng)的、快響應(yīng)的和豐富的交互式體驗(yàn)。與B/S 或C/S 相比,只能客戶端具有明顯的優(yōu)勢。用戶可以在離線情況下運(yùn)行程序,可以使用本地?cái)?shù)據(jù)或連接到服務(wù)端數(shù)據(jù)庫,不依賴于網(wǎng)絡(luò)是否連接。移動通訊設(shè)備,由于網(wǎng)絡(luò)費(fèi)用,網(wǎng)絡(luò)故障,可能不能保持網(wǎng)絡(luò)實(shí)時(shí)通常,移動本地個(gè)人數(shù)字圖書館終端設(shè)備采用智能客戶端,網(wǎng)絡(luò)在線可以進(jìn)行在線查詢,在線咨詢,在線閱讀等即時(shí)服務(wù),當(dāng)網(wǎng)絡(luò)斷開時(shí),可管理本地個(gè)人數(shù)字圖書館,可以對依據(jù)自身需要收集儲存的信息,進(jìn)行編輯、使用,可根據(jù)各自的愛好、興趣,專長來進(jìn)行信息資源的選擇和控制,尤其對網(wǎng)上的信息進(jìn)行去糟粕取精,更方便快捷的對已存儲信息進(jìn)行查閱等,對收藏的信息反復(fù)進(jìn)行查詢和學(xué)習(xí)。
2 基于 Android 的移動終端應(yīng)用優(yōu)勢
隨著移動終端的普及和移動通信技術(shù)的發(fā)展,移動本地個(gè)人數(shù)字圖書館對移動終端的要求越來越高,而Symbian,Windows Mobile,PalmOS 等手機(jī)平臺都比較封閉,滿足不了用戶的需求。市場十分需要一個(gè)開放行很強(qiáng)的平臺。隨著3G 技術(shù)的發(fā)展,移動終端不再僅是通訊網(wǎng)絡(luò)的終端,還將成為互聯(lián)網(wǎng)的終端。因此,移動終端的應(yīng)用軟件和需要的服務(wù)將會有75 很大的發(fā)展空間。Google 為此于2007 年11 月推出了一個(gè)專為移動設(shè)備設(shè)計(jì)的軟件平臺--Android.
2.1 Android 的特征
開發(fā),源代碼完全開放。Android 平臺主要由應(yīng)用程序、開發(fā)庫、運(yùn)行環(huán)境和Linux 內(nèi)核等組成[3].其中,應(yīng)用程序包括用戶界面、地圖、瀏覽器、通訊錄和短信程序等,且都是由Java 語言來進(jìn)行操作和完成,使用者可進(jìn)行可視化使用,并掌管所有基本應(yīng)用功能和數(shù)據(jù):開發(fā)庫主要包括被用于系統(tǒng)組建中的常見功能,含Media Framework、libc、SGL、Webkit、OpenGLES、FreeType 和SQLite 等。
應(yīng)用程序框架包括資源、消息、活動管理器和可視化對象;Dalvik 虛擬機(jī)經(jīng)Google 修改和優(yōu)化后,效率更高;SQLite 開放關(guān)聯(lián)性數(shù)據(jù)庫占用資源少,運(yùn)行速度快,更適合在手機(jī)上運(yùn)用;Webkit 是Android 開源瀏覽器,開發(fā)時(shí)可做搜索引擎使用;Open GL ES 基于OpenGL ES 1.0 規(guī)定的3D 繪圖引擎,可優(yōu)化處理顯示;多媒體框架的核心Open Core 支持多種影像聲音格式,如MP3、AAC、MPEG4、JPG、PNG、GIF 等,可方便的開發(fā)多媒體應(yīng)用程序;Android 集成地圖模塊,LocatiON 接口和Maps 接口使開發(fā)M-GIS(移動地理信息系統(tǒng))更加容易。
2.2 Android的架構(gòu)和工作機(jī)制
Android 系統(tǒng)平臺由以下四個(gè)層次組成:Linux 內(nèi)核層、開發(fā)庫層、應(yīng)用框架層、應(yīng)用程序?qū)樱?/p>
(1)Linux 內(nèi)核層?;贚inux 2.6 內(nèi)核開發(fā),提供底層服務(wù),如內(nèi)存管理、進(jìn)程管理、安全機(jī)制、網(wǎng)絡(luò)堆棧等驅(qū)動模塊,位于軟件層和硬件層之間。
(2)開發(fā)庫層。包括運(yùn)行時(shí)庫和其他庫,Android運(yùn)行時(shí)包含一組核心庫(提供了Java語言核心庫內(nèi)的大部分功能)和Dalvik 虛擬機(jī)。它也提供了豐富的類庫支持,并且開源,如數(shù)據(jù)庫SQLite、OpenGL ES 等。
(3)應(yīng)用框架層。開發(fā)人員可跟核心應(yīng)用一樣,擁有訪問框架APIs 的全部權(quán)限。結(jié)構(gòu)化設(shè)計(jì)簡化了各組件之間的重用,所有應(yīng)用都可以分發(fā)自己的組件,也可使用分發(fā)的組件。
(4)應(yīng)用程序?qū)印ndroid 包含一套核心應(yīng)用程序。包括e-mail 客戶端、短信程序、通訊錄、日歷、瀏覽器、地圖等。
Android 上應(yīng)用程序有活動、服務(wù)、接收器和ContentProvider 四種主要類型?;顒樱ˋctivity)是最常用的Android 應(yīng)用程序形式。一個(gè)應(yīng)用程序可包括一個(gè)或多個(gè)活動;服務(wù)(Service)是在后臺運(yùn)行著的應(yīng)用程序,服務(wù)是沒有UI 的應(yīng)用程序;接收器(Receiver)接受請求并處理intent,并且沒有UI元素;ContentProvider 是數(shù)據(jù)儲存抽象機(jī)制。
2.3 Android 與其他手機(jī)操作系統(tǒng)的比較
從手機(jī)操作系統(tǒng)的Portablity、Relisbility、Connectivity、Product Diversity、Open Platform、Kernel Size、STandards、Security 和Special Features 幾個(gè)方面進(jìn)行比較,比較結(jié)果如下表:
表1 手機(jī)操作系統(tǒng)對照表
3 移動本地個(gè)人數(shù)字圖書館手機(jī)客戶端功能設(shè)計(jì)
系統(tǒng)可采用 MVC 設(shè)計(jì)模式,視圖由res/目錄中XML 文件來實(shí)現(xiàn),很好的將顯示層分離,可增強(qiáng)程序的閱讀行,并有利于系統(tǒng)的后期維護(hù);控制器由Activity與用戶的交互實(shí)現(xiàn);模型層可用ContentProvider 實(shí)現(xiàn)系統(tǒng)內(nèi)部資源共享。
(1)用戶和圖書管理模塊[4].用戶管理主要是讀者和圖書管理員的賬戶信息注冊、查詢、修改等,讀者和管理員都可以通過手機(jī)客戶端直接登錄系統(tǒng),進(jìn)行賬戶管理;圖書管理是指圖書的檢索、借閱、預(yù)約、續(xù)借等,借閱模塊可以使自己避免借閱超期,續(xù)借模塊可以延長開到期的圖書的時(shí)間,預(yù)約模塊可以預(yù)約未歸還的書。
(2)在線閱讀模塊。此模塊要包括在線搜索圖書功能;在線及時(shí)閱讀圖書;書簽功能,收藏閱讀資源,記錄閱讀歷史,方便第二次閱讀;預(yù)讀下頁功能,使閱讀更流暢;屏幕縮放和滑動翻頁功能,閱讀更人性化。
(3)數(shù)字資源下載模塊??梢詫⑾矚g的數(shù)字資源下載到手機(jī)本地,當(dāng)網(wǎng)絡(luò)斷開時(shí)可以直接閱讀本地資源,對本地資源分類管理,提供各類資源閱讀器;建立全文索引,便于本地搜索??捎肧ervice 實(shí)現(xiàn),作為后臺服務(wù),不受其他進(jìn)程影響。
(4)本地檢索模塊。本地可根據(jù)主題、題目、作者、關(guān)鍵字、摘要等進(jìn)行本地全文檢索。
(5)讀者服務(wù)模塊。在此模塊讀者可根據(jù)自己的興趣定制信息和服務(wù),例如熱門書推薦、評論等,根據(jù)定制的服務(wù),服務(wù)器端的信息更新及時(shí)推送到手機(jī)客戶端。
(6)圖書館地理位置導(dǎo)航模塊。用戶可用來方便找到圖書館的位置。可用Android 集成地圖模塊實(shí)現(xiàn)此功能。
4 結(jié)論
目前移動數(shù)字圖書館已經(jīng)有了很大的發(fā)展,但是多數(shù)還是基于短信和WAP 模式,有一定的局限性。本文分析胖客戶端/服務(wù)器模式和Android操作系統(tǒng)的優(yōu)勢,構(gòu)建了基于Android平臺的本地個(gè)人數(shù)字圖書館模型。該系統(tǒng)打破了網(wǎng)絡(luò)的限制,可隨時(shí)訪問圖書館資源,根據(jù)個(gè)人愛好建立自己的本地圖書館。手機(jī)是目前發(fā)展最快的網(wǎng)絡(luò)移動設(shè)備,個(gè)人移動本地?cái)?shù)字圖書館的模式打破了傳統(tǒng)圖書館的模式,為圖書館服務(wù)提升了空間。
評論