本發(fā)明涉及移動終端技術(shù)領(lǐng)域,尤其涉及一種生成kml文件的方法、裝置及移動終端。
背景技術(shù):
kml(keyholemarkuplanguage,keyhole標記語言)是一種文件格式,用于在例如google地球、google地圖和谷歌手機地圖等地球瀏覽器中顯示地理數(shù)據(jù),其采用xml的語法格式,可以用來保存點、線、圖像等特定的地理信息。
目前,有很多合成kml文件的pc軟件,這些軟件都是基于gps模塊nmea日志轉(zhuǎn)換生成kml文件,其中,nema是美國國家海洋電子協(xié)會(nationalmarineelectronicsassociation)為海用電子設(shè)備制定的標準格式。
在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下技術(shù)問題:
現(xiàn)有的生成kml文件的方法大部分采用pc端工具,需要在pc端進行,而且,現(xiàn)有的生成kml文件的方法都依賴于nmea日志,操作比較繁瑣。
技術(shù)實現(xiàn)要素:
本發(fā)明提供的生成kml文件的方法、裝置及移動終端,能夠在脫離pc端且不依賴于nmea日志的情況下生成kml文件,操作簡單快捷。
第一方面,本發(fā)明提供一種生成kml文件的方法,包括:
創(chuàng)建gps字段相關(guān)數(shù)據(jù)庫,所述gps字段包括經(jīng)度、緯度、海拔;
利用androidapi監(jiān)聽gps字段相關(guān)的gps數(shù)據(jù)變化,并將監(jiān)聽到的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫;
創(chuàng)建具有kml格式的文件,并將所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù) 寫入所述具有kml格式的文件,生成kml文件。
可選的,所述利用androidapi監(jiān)聽gps字段相關(guān)的gps數(shù)據(jù)變化,并將監(jiān)聽到的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫包括:利用androidapi監(jiān)聽gps位置信息的變化,當gps位置信息發(fā)生變化時,將gps位置信息中的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫。
可選的,所述調(diào)取所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù),創(chuàng)建具有kml格式的文件,并將所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)寫入所述具有kml格式的文件,生成kml文件包括:
構(gòu)建用于緩存kml信息的構(gòu)造器,所述kml信息為所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù);
構(gòu)建kml數(shù)據(jù)頭;
構(gòu)建kml數(shù)據(jù);
構(gòu)建kml數(shù)據(jù)尾,形成具有kml格式的文件;
將所述構(gòu)造器中緩存的kml信息寫入到所述具有kml格式的文件中,形成kml文件。
可選的,所述kml數(shù)據(jù)包括:所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)、位置節(jié)點開始標志、位置節(jié)點名稱開始標志、位置節(jié)點名稱、位置節(jié)點名稱結(jié)束標志、位置節(jié)點描述開始標志、位置精度的描述、位置距離的描述、位置節(jié)點描述結(jié)束標志、位置節(jié)點時間戳開始標志、時間戳、位置節(jié)點時間戳結(jié)束標志、gps數(shù)據(jù)節(jié)點開始標志、數(shù)據(jù)節(jié)點的gps數(shù)據(jù)、gps數(shù)據(jù)節(jié)點結(jié)束標志、位置節(jié)點結(jié)束標志。
第二方面,本發(fā)明提供一種生成kml文件的裝置,包括:
創(chuàng)建單元,用于創(chuàng)建gps字段相關(guān)數(shù)據(jù)庫,所述gps字段包括經(jīng)度、緯度、 海拔;
監(jiān)聽單元,用于利用androidapi監(jiān)聽gps字段相關(guān)的gps數(shù)據(jù)變化,并將監(jiān)聽到的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫;
生成單元,用于創(chuàng)建具有kml格式的文件,并將所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)寫入所述具有kml格式的文件,生成kml文件。
可選的,所述監(jiān)聽單元,用于利用androidapi監(jiān)聽gps位置信息的變化,當gps位置信息發(fā)生變化時,將gps位置信息中的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫。
可選的,所述生成單元包括:
第一構(gòu)建模塊,用于構(gòu)建用于緩存kml信息的緩存單元,所述kml信息為所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù);
第二構(gòu)建模塊,用于構(gòu)建kml數(shù)據(jù)頭;
第三構(gòu)建模塊,用于構(gòu)建kml數(shù)據(jù);
第四構(gòu)建模塊,用于構(gòu)建kml數(shù)據(jù)尾,形成具有kml格式的文件;
寫入模塊,用于將所述緩存單元中緩存的kml信息寫入到所述具有kml格式的文件中,形成kml文件。
可選的,所述kml數(shù)據(jù)包括:所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)、位置節(jié)點開始標志、位置節(jié)點名稱開始標志、位置節(jié)點名稱、位置節(jié)點名稱結(jié)束標志、位置節(jié)點描述開始標志、位置精度的描述、位置距離的描述、位置節(jié)點描述結(jié)束標志、位置節(jié)點時間戳開始標志、時間戳、位置節(jié)點時間戳結(jié)束標志、gps數(shù)據(jù)節(jié)點開始標志、數(shù)據(jù)節(jié)點的gps數(shù)據(jù)、gps數(shù)據(jù)節(jié)點結(jié)束標志、位置節(jié)點結(jié)束標志。
第三方面,本發(fā)明提供一種移動終端,所述用戶設(shè)備包括上述生成kml文 件的裝置。
本發(fā)明實施例提供的生成kml文件的方法、裝置及移動終端,結(jié)合kml文件內(nèi)部標準格式,直接將通過androidapi監(jiān)聽到的gps數(shù)據(jù)寫入到kml文件相應(yīng)位置,這樣生成的kml文件能夠直接導(dǎo)入到google地圖查看運動軌跡,與現(xiàn)有技術(shù)相比,本發(fā)明省掉了導(dǎo)出nmea日志到pc端,接著利用pc端工具基于nmea日志生成kml,再將kml導(dǎo)入到google地圖的繁瑣過程,從而能夠在脫離pc端且不依賴于nmea日志的情況下生成kml文件,操作簡單快捷。
附圖說明
圖1為本發(fā)明實施例提供的生成kml文件的方法的流程圖;
圖2為發(fā)明一實施例提供的生成kml文件的裝置的結(jié)構(gòu)示意圖;
圖3為發(fā)明另一實施例提供的生成kml文件的裝置的結(jié)構(gòu)示意圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明提供一種生成kml文件的方法,如圖1所示,所述方法包括:
s11、創(chuàng)建gps字段相關(guān)數(shù)據(jù)庫,所述gps字段包括經(jīng)度、緯度、海拔。
其中,所述gps字段還可以包括數(shù)據(jù)庫名和id。
s12、利用androidapi監(jiān)聽gps字段相關(guān)的gps數(shù)據(jù)變化,并將監(jiān)聽到的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫。
具體地,利用androidapi監(jiān)聽gps位置信息的變化,當gps位置信息發(fā)生變化時,將gps位置信息中的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫。
進一步地,可以多次執(zhí)行步驟s12,利用androidapi持續(xù)監(jiān)聽gps字段相關(guān)的gps數(shù)據(jù)變化,并將監(jiān)聽到的gps數(shù)據(jù)不斷寫入所述gps字段相關(guān)數(shù)據(jù)庫,直至監(jiān)聽結(jié)束,轉(zhuǎn)至步驟s13。
s13、創(chuàng)建具有kml格式的文件,并將所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)寫入所述具有kml格式的文件,生成kml文件。
具體地,步驟s13可以包括:
構(gòu)建用于緩存kml信息的構(gòu)造器,所述kml信息為所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù);
構(gòu)建kml數(shù)據(jù)頭;
構(gòu)建kml數(shù)據(jù);其中,所述kml數(shù)據(jù)包括:所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)、位置節(jié)點開始標志、位置節(jié)點名稱開始標志、位置節(jié)點名稱、位置節(jié)點名稱結(jié)束標志、位置節(jié)點描述開始標志、位置精度的描述、位置距離的描述、位置節(jié)點描述結(jié)束標志、位置節(jié)點時間戳開始標志、時間戳、位置節(jié)點時間戳結(jié)束標志、gps數(shù)據(jù)節(jié)點開始標志、數(shù)據(jù)節(jié)點的gps數(shù)據(jù)、gps數(shù)據(jù)節(jié)點結(jié)束標志、位置節(jié)點結(jié)束標志;
構(gòu)建kml數(shù)據(jù)尾,形成具有kml格式的文件;
將所述構(gòu)造器中緩存的kml信息寫入到所述具有kml格式的文件中,形成kml文件。
本發(fā)明實施例提供的生成kml文件的方法,結(jié)合kml文件內(nèi)部標準格式,直接將通過androidapi監(jiān)聽到的gps數(shù)據(jù)寫入到kml文件相應(yīng)位置,這樣生成的kml文件能夠直接導(dǎo)入到google地圖查看運動軌跡,與現(xiàn)有技術(shù)相比, 本發(fā)明省掉了導(dǎo)出nmea日志到pc端,接著利用pc端工具基于nmea日志生成kml,再將kml導(dǎo)入到google地圖的繁瑣過程,從而能夠在脫離pc端且不依賴于nmea日志的情況下生成kml文件,操作簡單快捷。
本發(fā)明實施例還提供一種生成kml文件的裝置,如圖2所示,所述裝置包括:
創(chuàng)建單元21,用于創(chuàng)建gps字段相關(guān)數(shù)據(jù)庫,所述gps字段包括經(jīng)度、緯度、海拔;其中,所述gps字段還可以包括數(shù)據(jù)庫名和id。
監(jiān)聽單元22,用于利用androidapi監(jiān)聽gps字段相關(guān)的gps數(shù)據(jù)變化,并將監(jiān)聽到的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫;
生成單元23,用于創(chuàng)建具有kml格式的文件,并將所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)寫入所述具有kml格式的文件,生成kml文件。
本發(fā)明實施例提供的生成kml文件的裝置,結(jié)合kml文件內(nèi)部標準格式,直接將通過androidapi監(jiān)聽到的gps數(shù)據(jù)寫入到kml文件相應(yīng)位置,這樣生成的kml文件能夠直接導(dǎo)入到google地圖查看運動軌跡,與現(xiàn)有技術(shù)相比,本發(fā)明省掉了導(dǎo)出nmea日志到pc端,接著利用pc端工具基于nmea日志生成kml,再將kml導(dǎo)入到google地圖的繁瑣過程,從而能夠在脫離pc端且不依賴于nmea日志的情況下生成kml文件,操作簡單快捷。
可選的,所述監(jiān)聽單元22,用于利用androidapi監(jiān)聽gps位置信息的變化,當gps位置信息發(fā)生變化時,將gps位置信息中的gps數(shù)據(jù)寫入所述gps字段相關(guān)數(shù)據(jù)庫。
可選的,所述生成單元23包括:
第一構(gòu)建模塊231,用于構(gòu)建用于緩存kml信息的緩存單元,所述kml信息為所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù);
第二構(gòu)建模塊232,用于構(gòu)建kml數(shù)據(jù)頭;
第三構(gòu)建模塊233,用于構(gòu)建kml數(shù)據(jù);
第四構(gòu)建模塊234,用于構(gòu)建kml數(shù)據(jù)尾,形成具有kml格式的文件;
寫入模塊235,用于將所述緩存單元中緩存的kml信息寫入到所述具有kml格式的文件中,形成kml文件。
可選的,所述kml數(shù)據(jù)包括:所述gps字段相關(guān)數(shù)據(jù)庫中的gps數(shù)據(jù)、位置節(jié)點開始標志、位置節(jié)點名稱開始標志、位置節(jié)點名稱、位置節(jié)點名稱結(jié)束標志、位置節(jié)點描述開始標志、位置精度的描述、位置距離的描述、位置節(jié)點描述結(jié)束標志、位置節(jié)點時間戳開始標志、時間戳、位置節(jié)點時間戳結(jié)束標志、gps數(shù)據(jù)節(jié)點開始標志、數(shù)據(jù)節(jié)點的gps數(shù)據(jù)、gps數(shù)據(jù)節(jié)點結(jié)束標志、位置節(jié)點結(jié)束標志。
本發(fā)明實施例還提供一種移動終端,所述移動終端包括上述生成kml文件的裝置。
本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(read-onlymemory,rom)或隨機存儲記憶體(randomaccessmemory,ram)等。
以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準。