摘要:針對人參食品可追溯鏈在物流運輸環(huán)節(jié)中動態(tài)地理定位信息可視化問題,在深入研究Android地理定位和Google Maps API技術的基礎上,利用智能手機可移動通訊特點,以HTC Sensation手機為測試平臺,提出了將人參食品追溯鏈地理位置及路徑信息進行可視化顯示的方法。軟件測試結果表明,該方法通過用戶手機提取包裝條碼信息的同時,可以動態(tài)顯示食品的地理位置和歷史路徑可視化信息,有效輔助可追溯鏈的信息查詢和管理。
關鍵詞:人參食品可追溯;地理定位;Android系統(tǒng);Google Maps技術
中圖分類號:TP311.52 文獻標識碼:A 文章編號:0439-8114(2013)23-5877-03
為了建立、健全和完善食品可追溯體系,有效應對頻發(fā)性食品安全問題,2007、2008、2009年三個中央一號文件都對建立農產品質量安全追溯制度提出了明確的要求[1]。同時,自2000年初開始,國內一些地區(qū)開展一系列食品可追溯示范研究[2,3],目前國內可追溯技術主要在家畜繁養(yǎng)加工領域開展,如昝林森等[4]開發(fā)的牛肉質量安全可追溯網絡化系統(tǒng),謝菊芳等[5]開發(fā)的安全豬肉全程可追溯系統(tǒng),陳長喜等[6]開發(fā)的肉雞安全生產全程跟蹤與追溯平臺等。這些可追溯系統(tǒng)涵蓋條碼技術、激光蝕刻技術、RFID無線射頻技術和無線分頻技術等;同時追溯服務涵蓋短信查詢、電話查詢和網絡查詢等,較為完善,但是在農產品其他領域的應用較少。人參(Panax ginseng C. A. Mey.)屬五加科(Araliaceae)人參屬(Acanthopanax)多年生宿根草本植物,一直以來在中藥寶庫中具有至尊的地位,享有百草之王、百藥之首的美譽。但是人參市場長期以來在生產、加工、物流、經營等諸多環(huán)節(jié)缺乏規(guī)范化管理,影響了其產品質量和市場競爭力。2007年以來,以Google為首的30多家移動技術無線通訊等應用領域的企業(yè)組成開放式手機聯(lián)盟,推出了一個專為移動設備設計的Android智能手機平臺[7],該平臺將谷歌地圖技術融合到Android空間地理定位技術中,使該平臺支持地圖服務的應用開發(fā)[8,9]。
在上述應用和研究背景下,借鑒家畜繁養(yǎng)加工領域的示范成果,將可追溯技術體系用于吉林人參生產、加工和流通環(huán)節(jié)的監(jiān)管。此文利用手機可移動實時通訊的特點,將Android系統(tǒng)地理定位與Google Maps技術相結合,用以可視化顯示和記錄人參食品追溯鏈物流運輸環(huán)節(jié)的地理節(jié)點和歷史路徑信息,使消費者能夠形象、具體地了解該食品的物流運輸途徑信息,輔助提升追溯鏈中物流環(huán)節(jié)的有效監(jiān)控。
1 技術介紹
1.1 Android地理定位技術
Android是一種以Linux為基礎的開放源碼操作系統(tǒng),主要用于便攜設備。Android系統(tǒng)采用分層架構,主要分為4層,從高層到底層順次為應用程序層、應用程序框架層、系統(tǒng)運行庫層和Linux核心層[10]。Android內置支持地理定位服務的API,該地理定位服務可以用來獲取當前設備的地理位置,應用程序可以定時請求更新當前的地理定位信息。該地理定位服務的API全部位于Andriod.Location包內,其中內置幾個將要用到的重要功能類(表1),通過Android內置類庫實現(xiàn)基于Android手機的精確地理定位。
1.2 Google Maps API技術
Web API是通過開放的Internet傳輸協(xié)議,以標準方式定義并提供可被其他應用調用的服務內容,它通過API調用將內容進行整合,目前主要以架構在Web平臺上,并且以HTTP為基礎的Web API形式較為普及。Google Maps API是Google為開發(fā)者提供的Maps編程API。它允許開發(fā)者在不必建立自己的地圖服務器的情況下,將Google Maps地圖數(shù)據(jù)嵌入到網站之中,從而實現(xiàn)嵌入Google Maps的地圖服務應用,并借助Google Maps的地圖數(shù)據(jù)為用戶提供位置服務。Google Maps API除了幫助開發(fā)者將地圖嵌入到Web應用中之外,還允許開發(fā)者利用Java Script腳本進行應用開發(fā)拓展,給地圖添加標注和折線及其他地圖圖層覆蓋物和地圖,或者響應用戶的點擊動作,并顯示包含內容信息在內的氣泡提示窗口。通過Google Maps為開發(fā)者提供的地圖API,可以開發(fā)出各種各樣有趣的地圖Mash-up應用,還可以將不同地圖圖層加載到應用中,如衛(wèi)星影像、根據(jù)海拔高度繪制的高山和植被地形圖、街道視圖等,從而幫助開發(fā)者打造個性化的地圖應用站點。
2 Android系統(tǒng)結合Google Maps API定位技術實現(xiàn)
2.1 在Android平臺上顯示Google地理信息
2.1.1 獲取Google Maps APIKey 開發(fā)基于谷歌地圖的應用與普通Android應用類庫開發(fā)相似,所不同的是Google Maps的類庫不是Android平臺的基本類庫,而是Google API的一部分,所以建立項目時SDK要選擇Google API;還有一點,開發(fā)基于地圖應用的時候需要使用Google Maps的APIkey,必須先申請key,然后才能開發(fā)基于地圖的應用。申請Google Maps APIKey具體執(zhí)行步驟如下:
Step1:找到debug.keystore文件。在Eclipse工具下,選擇windows-->Preference-->Android-->Build,其中Default debug.keystore的值便是debug.keystore的路徑;
Step2:取得debug.keystore的MD5值。首先cmd命令行進入debug.keystore文件所在的路徑,執(zhí)行命令:keytool -list -keystore debug.keystore,輸入默認密碼 “android\",從而獲取MD5值;
Step3:申請Android Maps的APIKey。打開瀏覽器,輸入網址:http://code.google.com/android/maps-api-signup.html,填入認證指紋(MD5)即可獲得APIKey。
2.1.2 Google Maps API使用 Android中定義的一個名為com.google.android.map的包,其中包含了一系列用于在Google Maps上顯示、控制和疊層信息的功能類。
1)MapActivity。這個類是用于顯示Google Maps的Activity類,它需要連接底層網絡。MapActivity是一個抽象類,任何想要顯示MapView的Activity都需要派生自MapActivity,并且在其派生類的onCreate()中都要創(chuàng)建一個MapView實例。MapView需要由MapActivity來管理,所以程序部分應該繼承自MapActivity類,必須實現(xiàn)isRouteDisplay方法。創(chuàng)建方式如下。
MapView提供了3種模式的地圖,分別可以通過以下方式設置采用什么模式來顯示地圖。
mMapView.setTraffic(true);//設置為交通模式
mMapView.setSatellite(true);//設置為衛(wèi)星模式
mMapView.setStreetView(1);//設置為街景模式
2)MapView。MapView是用于顯示地圖的View組件。它派生自android.view.ViewGroup。它必須和MapActivity配合使用,而且只能被MapActivity創(chuàng)建,這是因為MapView需要通過后臺的線程來連接網絡或者文件系統(tǒng),而這些線程需要由MapActivity來管理。創(chuàng)建方式如下。
MapView mapView = new MapView(this, \"(android Maps APIKey)\");
3)MapController。MapController用于控制地圖的移動、縮放等。創(chuàng)建方式如下。
mMapController = mMapView.getController();
2.2 顯示空間地理信息
首先通過手機客戶端向網絡服務端發(fā)送socket請求,服務端在接收到請求后對其作出響應,并把請求數(shù)據(jù)返回給手機客戶端,然后客戶端接收服務端發(fā)來的數(shù)據(jù),并對數(shù)據(jù)進行解析。在手機客戶端與網絡服務端建立通訊的基礎上,客戶端利用獲取到的追溯鏈上人參食品條碼信息,同時將這些信息根據(jù)每個時次的路徑點經緯度與Google地圖上的經緯度進行匹配,在匹配的基礎上顯示并繪制空間地理位置信息及追溯鏈路徑信息。
2.3 試驗結果
完成上述開發(fā)設置步驟后,就可以在用戶手機客戶端上顯示人參食品追溯鏈的空間地理信息。此文以HTC Sensation手機為測試平臺,將程序安裝到手機上,顯示人參食品追溯鏈空間地理信息如圖1所示。
3 小結
在簡要介紹了Android地理定位和Google Maps技術的基礎上,詳細講述了如何在基于Android系統(tǒng)的智能手機上添加Google地圖服務,并以人參食品追溯鏈中的物流運輸環(huán)節(jié)為例,實現(xiàn)了人參食品在Google地圖上的地理信息可視化顯示。通過在用戶手機上安裝該套插件并結合條碼識讀軟件,用戶可以在應用手機拍攝人參食品包裝上的二維碼并返回二維碼信息的同時,獲取該物品在谷歌地圖上的空間地理位置信息和歷史路徑信息。軟件通過結合地理信息可視化技術,大大提高了人參食品追溯鏈上物流運輸環(huán)節(jié)的管控,該技術同時也可以推廣應用到其他食品可追溯物流運輸環(huán)節(jié)。
參考文獻:
[1] 王兆丹.羊肉產品追溯系統(tǒng)的構建[D].北京:中國農業(yè)科學院,2010.
[2] 施澤平.農產品質量安全實施IC卡監(jiān)管的實踐與思考[J].農業(yè)質量標準,2005(6):24-26.
[3] 樊紅平,馬忠澤,楊 玲,等.可追溯體系在食品供應鏈中的應用與探討[J].生態(tài)經濟,2007(4):63-65.
[4] 昝林森,申光磊,段軍彪.基于JSP的牛肉質量安全可追溯網絡化系統(tǒng)研究[J].中國農學通報,2006,22(12):13-16.
[5] 謝菊芳,陸昌華,李保明,等.基于.NET構架的安全豬肉全程可追溯系統(tǒng)實現(xiàn)[J].農業(yè)工程學報,2006,22(6):218-220.
[6] 陳長喜,張宏福,飛頡經緯,等.肉雞安全生產全過程跟蹤與可追溯平臺的設計[J].農業(yè)工程學報,2010,26(9):263-269.
[7] 姚昱昱.基于Android的移動學習終端平臺的開發(fā)與研究[D].長沙:中南大學,2008.
[8] 游 蘭,彭慶喜.基于Google Maps API的地圖解析研究與實現(xiàn)[J]. 湖北大學學報(自然科學版),2010,32(2):161-164.
[9] 周宇林,付忠良.基于Google地圖API的空間信息發(fā)布[J].計算機應用,2011,31(5):1450-1452.
[10] 佘鳳婭.基于Android的手機搜索定位應用開發(fā)[D].北京:北京郵電大學,2010.