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