虎嘯
【摘要】 隨著信息技術的 迅速發(fā)展,人們的生活內(nèi)容不斷豐富,手機地圖的使用率和需求率越來越高,人們利用手機地圖進行導航、定位,或者結合其它應用為生活和出行創(chuàng)造便利條件。如果用戶將實時位置信息以便捷的方式有選擇地記錄下來,或者通過電子地圖對目的地坐標進行位置搜索后選中記錄,并設定時間進行提醒,將有助于為人們提供需要二次或多次訪問地點的備忘提醒。
【關鍵詞】 百度地圖 定位 備忘提醒
一、總體設計
1.定位位置提取。定位位置提取由兩個部分組成,一是自我定位模塊,通過GPS設備獲得位置信息??梢栽O定快捷鍵來啟動定位記錄。當用戶按下快捷鍵后,用戶當前位置便被快速記錄下來,并可以在電子地圖上向用戶展示當前的位置,用戶可再次確定是否記錄下該地點作為備忘內(nèi)容;二是位置搜索模塊,通過用戶在電子地圖上選定位置,確定用戶想要搜索的地址坐標。
2.設置備忘錄。將用戶需要的定位位置通過自動截圖的方式記錄下來,與設置的鬧鈴信息進行關聯(lián)并保存。提醒方式可以為系統(tǒng)默認或者用戶設置,同時用戶可以根據(jù)提醒的時間、頻率、內(nèi)容等進行查詢、添加、修改和刪除。
3.備忘錄提醒。根據(jù)用戶在地圖備忘錄設置的信息,可在相應的時間向用戶提醒備忘錄中的地址或定位位置信息。對備忘錄中已經(jīng)提醒過的地址及定位坐標進行過期提醒,由用戶決定是否刪除該備忘內(nèi)容。
二、功能實現(xiàn)
對android平臺的簡介
隨著移動互聯(lián)網(wǎng)技術的飛速發(fā)展和智能手機的普及,人們的日常生活與智能手機的關聯(lián)更加緊密。近年來,android在中國城市智能手機市場的份額大幅增加,在android平臺上進行開發(fā),將有利于應用軟件日后的推廣。android平臺為開發(fā)者提供了靈活便捷的地圖展示和控制功能,開發(fā)者通過調(diào)用電子地圖的接口既可以實現(xiàn)地圖的顯示、定位、搜索等功能,也可以根據(jù)應用需要進行技術創(chuàng)新而達到個性化目的。
1.位置信息的提取和顯示。手機應用程序要獲取定位信息一般是通過借助第三方服務,如百度地圖、高德地圖等,并按照第三方開發(fā)要求,對電子地圖相關接口進行調(diào)用。本文通過百度地圖定位 SDK來設計實現(xiàn)對用戶當前定位信息的記錄和顯示。通過按動系統(tǒng)默認或者用戶之前設置快捷鍵的方式啟動定位按鈕并自動定位當前位置,向定位SDK 發(fā)起定位請求時,根據(jù) GPS、 基站、 WiFi 信號的實際情況來進行定位,此時將坐標設置為經(jīng)緯度球面坐標,確保以最好的精度返回定位信息。該應用程序中要使用一些用于定位、顯示、控制信息的功能類。通過BDLocation 類獲取位置坐標,反編地理碼等信息,使用LocationClientOption 類來設定位方式,同時通過該類來實現(xiàn)對GPS是否打開,是否需要定位信息、定位操作掃描次數(shù)等參數(shù)進行設置。屏幕中的像素點和地球表面的經(jīng)緯度坐標之間的對應轉(zhuǎn)化由Projection 接口類來完成。地圖控制器MapController 類來達到地圖的縮放、多角度顯示等效果。通過 ItemizedOverlay向地圖添加一個自定義覆蓋物以標記用戶當前的位置。用戶也可以通過打開應用軟件瀏覽地圖,確定當前定位位置并記錄,或重新在地圖上搜索選擇想要作為備忘內(nèi)容的位置坐標。
2.備忘錄的設置和操作。為了方便用戶在離線時也可以看到備忘內(nèi)容,對用戶備忘的地點主要采用截取電子地圖上所需位置圖片的方式進行保存。用戶當前的地址坐標或者所要記錄的地址坐標信息將會以圖片方式記錄到備忘錄中,所以就需要考慮在SQlite數(shù)據(jù)庫里存取圖片。在數(shù)據(jù)庫中存取圖片一般有兩種方式,一是保存圖片路徑,二是將圖片以二進制的方式保存到BLOB類型的字段里。本文采用的是第一種方法,因為如果在數(shù)據(jù)庫里存入大量媒體數(shù)據(jù),會使得數(shù)據(jù)庫大小激增而導致數(shù)據(jù)庫訪問性能下降。把含有用戶當前位置或所要記錄的地址坐標信息的圖片保存到指定文件夾內(nèi),圖片路徑將保存到數(shù)據(jù)庫中以達到按照要求顯示的效果。
3.備忘錄的提醒。備忘錄的提醒采用鬧鈴提醒和彈窗提醒兩種方式。在應用程序開始時就調(diào)用AlarmManager的 setRepeating方法,在固定時間間隔發(fā)送廣播,再通過BroadcastReceiver 對數(shù)據(jù)庫中的提醒信息進行監(jiān)聽。使用BroadcastReceiver 的 CallAlarm 類中的 onReceiver 函數(shù)來負責接收該廣播。創(chuàng)建DBService 輔助類來處理用戶所設置的提醒時間與當前時間是否一致。若不一致,則返回為空,若一致,則返回數(shù)據(jù)項。onReceiver 函數(shù)將返回的數(shù)據(jù)項信息傳遞給 AlarmAlert 活動并啟動該活動。在 AlarmAlert 活動中,根據(jù)數(shù)據(jù)項中的內(nèi)容,通過彈窗震動和播放鬧鈴的方式進行提醒。
三、結束語
人們往往是按照到某地、于某時、辦某事來進行備忘記錄的,因此地理位置與人們的日常活動有著密切的關系。隨著電子地圖、實時定位和位置搜索等信息技術的發(fā)展,備忘錄中的地點由GPS實時定位技術記錄,或用戶在地圖上進行位置搜索后選中需要備忘的地點,將以截圖的方式記錄位置,同時利用備忘錄的提醒功能,在設定時間內(nèi)進行提醒。收到提醒的用戶,可以直接在彈窗上看到之前備忘的地點,通過地點與活動的關聯(lián)性,完成計劃中所要做的事情,以達到備忘的目的。
參 考 文 獻
[1]李天文. GPS 原理及應用[ M] . 北京: 北京科學出版社,2003