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