基于Android平臺的智能導游系統(tǒng)設計方案
智能導游系統(tǒng)的應用程序通過Android 2. 1 SDK來開發(fā),數(shù)據(jù)存儲采用嵌入式數(shù)據(jù)庫SQLite.智能導游系統(tǒng)具有游客信息管理、多媒體應用、電子地圖功能。智能導游系統(tǒng)功能模塊框架設計如圖3 所示。
圖3 智能導游系統(tǒng)應用功能模塊設計
3. 1 游客信息管理模塊
游客信息管理模塊負責對團隊游客的信息進行管理,支持數(shù)據(jù)存儲、查詢、修改等功能,以隨時記錄游客信息,方便對旅游團隊進行管理。
Android 系統(tǒng)中可供選擇的存儲方式有如下幾種:
SharedPreferences、文件存儲、SQLite 數(shù)據(jù)庫存儲、內(nèi)容提供器( CONtent provider) 和網(wǎng)絡存儲。在該系統(tǒng)中,游客信息數(shù)據(jù)存儲采用SQLite 數(shù)據(jù)庫進行存儲。
SQLite 是Android 系統(tǒng)所帶的一個輕量級嵌入式數(shù)據(jù)庫,支持SQL 語句,實現(xiàn)了事務的原子性、一致性、獨立性及持久性( ACID) ,最大支持2 TB 的數(shù)據(jù)存儲。
SQLite 存儲數(shù)據(jù)實現(xiàn)方式: 首先實例化一個SQLiteDatabase 類,即得到一個SQLite 數(shù)據(jù)庫。SQLite數(shù)據(jù)庫對象有3 個方法: ①onCreat( ) : 在數(shù)據(jù)庫第一次生成的時候,系統(tǒng)調(diào)用這個方法用來生成數(shù)據(jù)庫表;②onUpgrade( ) : 當數(shù)據(jù)庫更新的時候,系統(tǒng)會調(diào)用這個方法將數(shù)據(jù)庫從舊版本跟新到新版本; ③onOpen( ) : 打開數(shù)據(jù)庫時的回調(diào)函數(shù)。通過在onOpen( ) 方法中調(diào)用數(shù)據(jù)庫實例的execSQL( ) 方法,就可以在打開該數(shù)據(jù)庫的時候執(zhí)行一條SQL 語句,從而完成相應數(shù)據(jù)庫操作功能。
游客信息數(shù)據(jù)庫字段定義如表1 所示。
在數(shù)據(jù)庫中對游客信息進行增加、修改、刪除等操作的設計方案,通過采用事件監(jiān)聽模型來完成,從而使應用程序具有良好的交互性。筆者以查找功能的實現(xiàn)為例,來闡述智能導游系統(tǒng)對游客信息管理的查找事件處理的流程。
表1 游客信息數(shù)據(jù)庫字段
查找事件處理過程的事件源為查找按鈕findBut-ton.首先程序?qū)⒈O(jiān)聽器clickLiSTener 通過setOnClick-Listener( ) 方法注冊到findButton.當外部動作觸摸到findButton 的時候,系統(tǒng)產(chǎn)生click 事件,并將其傳入到事件監(jiān)聽器clickListener.事件監(jiān)聽器調(diào)用事件處理器做出相應動作,即在onClick 方法中調(diào)用系統(tǒng)函數(shù)startActivity,啟動一個intent( 意圖) ,從而實現(xiàn)界面的跳轉(zhuǎn),再通過調(diào)用數(shù)據(jù)庫的execSQL( ) 方法來實現(xiàn)數(shù)據(jù)庫查找操作功能。
評論