專利名稱:一種基于安卓系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及汽車導(dǎo)航領(lǐng)域,更具體地說,是涉及一種基于安裝系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng)。
背景技術(shù):
汽車導(dǎo)航儀基于GPS (Global Positioning System,全球定位系統(tǒng)),能夠方便地為車主提供準(zhǔn)確的定位信息與合理的路徑規(guī)劃,在人們的交通范圍越來越廣、路網(wǎng)錯綜復(fù)雜的現(xiàn)今社會,有很大的用戶需求,并且已經(jīng)得到廣泛的使用。汽車導(dǎo)航儀一般為一件需要獨立購買的汽車配件。安卓(Android)是基于Linux平臺的移動終端操作系統(tǒng),近年來憑借其開源、高效等優(yōu)勢以及廠商的推動,贏得了廣大的用戶群體。以安卓為操作系統(tǒng)的移動終端本身絕大多數(shù)具有高速的運算處理能力以及GPS功能,在功能的拓展上有著光明的前途。
發(fā)明內(nèi)容
本發(fā)明為基于安卓系統(tǒng)的汽車導(dǎo)航信息管理系統(tǒng),針對人們對汽車導(dǎo)航功能的需要,以及安卓手機的廣大使用群體,提出一種能夠調(diào)用安卓手機GPS功能進行汽車導(dǎo)航的基于安卓系統(tǒng)的汽車導(dǎo)航系統(tǒng),并能夠為需要導(dǎo)航服務(wù)的第三方軟件提供GPS信息。本發(fā)明采用的技術(shù)方案是一種基于安卓系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng),所述系統(tǒng)安裝在具有GPS模塊并且是以安卓系統(tǒng)為操作系統(tǒng)的移動終端上,所述系統(tǒng)包括系統(tǒng)框架、導(dǎo)航信息服務(wù)模塊、GIS導(dǎo)航引擎、JNI模塊和用戶界面模塊,系統(tǒng)框架用于實現(xiàn)系統(tǒng)內(nèi)各個模塊之間的通訊以及管理各個模塊之間的協(xié)作,導(dǎo)航信息服務(wù)模塊用于為第三方軟件提供對系統(tǒng)的連接,JNI模塊用于調(diào)用GIS導(dǎo)航引擎。導(dǎo)航信息服務(wù)模塊在后臺運行,通過規(guī)定的AIDL接口為第三方軟件提供導(dǎo)航汽
車信息管理操作。GIS導(dǎo)航引擎采用C++編程語言編寫,調(diào)用時需通過JNI模塊,能進行地圖檢索、 地圖繪制、規(guī)劃導(dǎo)航以及個人導(dǎo)航信息管理等操作。JNI模塊采用Java語言編寫,一方面監(jiān)聽安卓系統(tǒng)GPS模塊的GPS信息并傳遞給GIS導(dǎo)航引擎,一方面為所有導(dǎo)航服務(wù)或者用戶交互界面關(guān)于GIS地圖引擎的操作以及 GIS地圖引擎對安卓系統(tǒng)調(diào)用都通過JNI接口傳遞。用戶界面模塊是基于安卓系統(tǒng)框架下的Activity組件開發(fā),用于顯示導(dǎo)航和系統(tǒng)信息、響應(yīng)用戶操作,通過系統(tǒng)框架調(diào)用JNI處理用戶操作請求。所述的基于安卓系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng),所述導(dǎo)航信息服務(wù)模塊中包含客戶端綁定模塊實現(xiàn)并管理第三方軟件對本系統(tǒng)的連接的接口綁定,根據(jù)第三方軟件與本系統(tǒng)的連接狀態(tài)管理其通訊接口的通斷。AIDL服務(wù)接口模塊為單向接口,編譯器通過解析AIDL接口文件,生成標(biāo)準(zhǔn)的 AIDL接口類,汽車信息服務(wù)通過繼承該AIDL接口類實現(xiàn)給定的功能接口。
AIDL回調(diào)模塊采用AIDL接口編寫,在綁定服務(wù)后向?qū)Ш狡囆畔⒎?wù)注冊回調(diào)函數(shù),第三方客戶端繼承AIDL接口類,導(dǎo)航汽車信息服務(wù)可以通過回調(diào)函數(shù)反饋信息給第三方軟件。所述的系統(tǒng)的啟動方法,包括如下一種或一種以上的啟動方式1)系統(tǒng)的廣播監(jiān)聽模塊接收到安卓系統(tǒng)開機成功的系統(tǒng)廣播,啟動導(dǎo)航管理系統(tǒng),加載GIS地圖引擎并初始化JNI之后,啟動導(dǎo)航管理服務(wù);2)第三方連接導(dǎo)航管理服務(wù),若導(dǎo)航管理系統(tǒng)未啟動,啟動導(dǎo)航管理系統(tǒng),加載 GIS地圖引擎并初始化JNI之后,如果導(dǎo)航管理服務(wù)尚未啟動,啟動導(dǎo)航管理服務(wù);3)系統(tǒng)手動啟動,如果導(dǎo)航管理系統(tǒng)沒有啟動,啟動導(dǎo)航管理系統(tǒng),加載GI S地圖引擎并初始化JNI之后,啟動導(dǎo)航管理服務(wù),最后啟動用戶界面。所述的系統(tǒng)的導(dǎo)航信息服務(wù)方法,包括如下步驟Si)第三方軟件請求導(dǎo)航信息服務(wù),導(dǎo)航信息服務(wù)模塊創(chuàng)建并調(diào)用接口供第三方軟件連接;S2)第三方軟件向服務(wù)注冊回調(diào)接口 ;S3)服務(wù)本地注冊回調(diào)接口,完成綁定;S4)第三方軟件調(diào)用導(dǎo)航信息服務(wù)接口,通過JNI使用GIS地圖引擎處理響應(yīng)服務(wù)請求;S5)GIS地圖引擎調(diào)用JNI模塊返回處理結(jié)果或數(shù)據(jù),JNI模塊通過調(diào)用管理服務(wù)的回調(diào)函數(shù)將結(jié)果返回給第三方軟件。所述的系統(tǒng)的GIS地圖引擎方法,包括如下步驟Sll)導(dǎo)航汽車信息管理系統(tǒng)啟動;S12)GIS地圖引擎進行初始化,包括設(shè)置地圖顯示數(shù)據(jù)、加載地圖數(shù)據(jù)、獲取GPS fn息;S13)用戶或服務(wù)可請求操作,通過JNI接口通訊,返回操作結(jié)果或者數(shù)據(jù)。本發(fā)明具有以下優(yōu)點1.本系統(tǒng)為基于安卓系統(tǒng)的軟件應(yīng)用,能實現(xiàn)汽車導(dǎo)航儀的功能之余,無需另外購買硬件,方便經(jīng)濟;2.本系統(tǒng)的導(dǎo)航信息服務(wù)模塊可對需要導(dǎo)航信息的第三方軟件進行支援,大大提高了安卓手機系統(tǒng)內(nèi)軟件的實用性3.本系統(tǒng)的GIS地圖引擎采用C++編寫,與JAVA相比更加高效。
圖1為本發(fā)明系統(tǒng)的總體結(jié)構(gòu)框架示意圖;圖2為本發(fā)明系統(tǒng)的功能框架示意圖;圖3為本發(fā)明第三方軟件連接導(dǎo)航信息服務(wù)模塊的流程示意圖;圖4為本發(fā)明系統(tǒng)啟動流程示意圖。
具體實施例方式本發(fā)明為基于安卓系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng),包括系統(tǒng)框架、用戶交互界面、GIS導(dǎo)航引擎、JNI模塊和導(dǎo)航信息服務(wù)模塊。系統(tǒng)框架基于安卓application組件開發(fā), 整個框架管理各個導(dǎo)航模塊的協(xié)調(diào)運作,起到了各個模塊通訊的橋梁作用,系統(tǒng)框架主要包括server組件,Activity組件,以及JNI調(diào)用。第三方軟件通過綁定server組件,獲取 server中提供的功能,server通過系統(tǒng)管理框架(application)與JNI通訊,獲取GIS地圖引擎來實現(xiàn)提供的服務(wù)。并通過Activity組件,呈現(xiàn)給用戶。系統(tǒng)的總體結(jié)構(gòu)框架如圖1所示,功能框架如圖2所示。系統(tǒng)框架包括初始化模塊、廣播監(jiān)聽模塊、消息處理模塊,管理各個導(dǎo)航模塊的協(xié)調(diào)運作,起到了各個模塊通訊的橋梁的作用。初始化模塊在系統(tǒng)啟動時對整個管理系統(tǒng)進行初始化;廣播監(jiān)聽模塊一方面在系統(tǒng)啟動前監(jiān)聽系統(tǒng)廣播,另一方面在系統(tǒng)啟動后操作系統(tǒng)廣播的監(jiān)聽,處理控制這個管理系統(tǒng)流程;消息處理模塊用于將各個功能模塊發(fā)送的消息通過消息句柄傳遞分發(fā)給對應(yīng)功能模塊處理。用戶交互界面包括顯示模塊和觸屏響應(yīng)模塊。顯示模塊用于顯示整個導(dǎo)航汽車信息系統(tǒng),支持3D繪制,而觸屏響應(yīng)模塊用于接收用戶界面操作信息。JNI模塊為采用Java語言編寫,是使導(dǎo)航汽車信息管理框架和GIS地圖引擎能夠相互通訊的橋梁。JNI通過接收偵聽安卓系統(tǒng)GPS模塊發(fā)出的GPS信息,經(jīng)過處理通過JNI 接口將GPS信息傳遞給GIS地圖引擎,更改導(dǎo)航汽車信息。系統(tǒng)調(diào)用GIS地圖引擎的所有導(dǎo)航服務(wù)以及用戶交互界面的關(guān)于GIS地圖引擎操作,雙向的信息傳遞均由JNI模塊提供。GIS地圖引擎通過JNI模塊與整個系統(tǒng)框架通訊協(xié)作,并管理所有的導(dǎo)航信息,包括位置信息管理模塊、地圖數(shù)據(jù)繪制模塊、規(guī)劃和導(dǎo)航模塊、地圖信息查詢模塊、用戶信息管理模塊。GIS地圖引擎采用C++開發(fā)并使用安卓動態(tài)庫進行封裝,系統(tǒng)效率更優(yōu)于采用 Java開發(fā),GIS引擎動態(tài)庫通過JNI調(diào)用與交互系統(tǒng)框架進行交互將各種處理了的信息傳遞給用戶以及導(dǎo)航服務(wù)。位置信息管理模塊用于通過衛(wèi)星定位并獲取汽車的地理位置,并管理該信息;地圖數(shù)據(jù)繪制模塊用于通過汽車的地理位置繪制地圖,如Ρ0Ι,行政區(qū),標(biāo)注, 綠地,水系等;規(guī)劃和導(dǎo)航模塊用于通過道路數(shù)據(jù)以及個人位置等信息規(guī)劃路徑并導(dǎo)航; 地圖信息查詢模塊提供指定點以及其周邊地圖信息的查詢,如POI興趣點,行政區(qū)劃信息, 道路信息,門址信息,實時交通信息等;用戶信息管理模塊用于管理用戶設(shè)定的個人導(dǎo)航信息,如個人導(dǎo)航歷史記錄,位置收藏夾,行程規(guī)劃管理、個人設(shè)置等。導(dǎo)航信息服務(wù)模塊用于通過規(guī)定好的AIDL接口為第三方軟件提供所需的導(dǎo)航信息操作,包括客戶端綁定模塊、AIDL服務(wù)接口模塊和AIDL回調(diào)模塊??蛻舳私壎K管理第三方軟件與該模塊的綁定和通斷,第三方軟件新建服務(wù)連接便可與該模塊綁定,綁定后可獲取導(dǎo)航汽車信息服務(wù)中的功能,實現(xiàn)了進程與進程之間的通訊。AIDL服務(wù)接口模塊 編譯器通過解析AIDL接口文件,生成標(biāo)準(zhǔn)的AIDL接口類,汽車信息服務(wù)通過繼承該類實現(xiàn)給定的功能接口。AIDL回調(diào)模塊第三方軟件調(diào)用導(dǎo)航汽車信息服務(wù)后,導(dǎo)航汽車信息服務(wù)可通過該模塊反饋信息給第三方軟件,彌補AIDL單向通訊的不足,形成完整的通訊機制。第三方軟件進行導(dǎo)航信息服務(wù)的流程如圖3所示首先,導(dǎo)航信息服務(wù)創(chuàng)建調(diào)用接口供第三方軟件連接,連接成功后,第三方軟件向服務(wù)注冊回調(diào)接口,注冊成功后,服務(wù)本地注冊回調(diào)接口,完成綁定。完成綁定后即可調(diào)用導(dǎo)航信息服務(wù)接口,通過JNI使用GIS 地圖引擎處理響應(yīng)服務(wù)請求,GIS地圖引擎調(diào)用JNI模塊返回處理結(jié)果或數(shù)據(jù),JNI模塊通過調(diào)用管理服務(wù)的回調(diào)函數(shù)將結(jié)果返回給第三方軟件。系統(tǒng)的啟動流程如圖4所示當(dāng)系統(tǒng)的廣播監(jiān)聽模塊接收到安卓系統(tǒng)開機成功的系統(tǒng)廣播時,啟動導(dǎo)航管理系統(tǒng),加載GIS地圖引擎并初始化JNI之后,啟動導(dǎo)航管理服務(wù), 以此完成整個系統(tǒng)的后臺啟動。當(dāng)?shù)谌杰浖B接導(dǎo)航信息服務(wù)模塊時,如導(dǎo)航管理系統(tǒng)沒有啟動,則啟動導(dǎo)航管理系統(tǒng),并加載GIS地圖和初始化JNI ;如導(dǎo)航服務(wù)沒有啟動,則啟動該服務(wù),以此完成系統(tǒng)為第三方軟件啟動導(dǎo)航信息服務(wù)的后臺啟動。當(dāng)用戶手動啟動導(dǎo)航汽車信息管理系統(tǒng)時,如果導(dǎo)航管理系統(tǒng)沒有啟動,則啟動導(dǎo)航管理系統(tǒng),并加載GIS地圖和初始化JNI ;啟動導(dǎo)航管理服務(wù)后,啟動用戶交互界面,完成手動啟動。用戶交互界面工作流程用戶手動啟動系統(tǒng),系統(tǒng)進行界面的初始化,包括設(shè)置顯示方式屏幕狀態(tài)等信息、系統(tǒng)輸入法與GIS引擎綁定、設(shè)置顯示數(shù)據(jù)、加載界面布局。用戶使用界面操作時,系統(tǒng)發(fā)送事件,用戶界面?zhèn)陕牻邮战缑娌僮魇录幚硎录{(diào)用JNI響應(yīng)用戶操作,JNI調(diào)用GIS引擎完成用戶請求,GIS引擎更新地圖顯示數(shù)據(jù),用戶界面顯示地圖數(shù)據(jù)。導(dǎo)航管理系統(tǒng)啟動GIS地圖引擎將進行初始化,步驟包括設(shè)置地圖顯示數(shù)據(jù)、加載地圖數(shù)據(jù)、獲取GPS信息。GIS引擎初始化后,用戶或服務(wù)可請求操作,例如路徑規(guī)劃導(dǎo)航、GPS定位、導(dǎo)航提示、導(dǎo)航信息管理、地圖數(shù)據(jù)檢索等,通過JNI接口通訊,返回操作結(jié)果或者數(shù)據(jù)。
權(quán)利要求
1.一種基于安卓系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng),其特征在于所述系統(tǒng)安裝在具有 GPS模塊并且是以安卓系統(tǒng)為操作系統(tǒng)的移動終端上,所述系統(tǒng)包括系統(tǒng)框架、導(dǎo)航信息服務(wù)模塊、GIS導(dǎo)航引擎、JNI模塊和用戶界面模塊,系統(tǒng)框架用于實現(xiàn)系統(tǒng)內(nèi)各個模塊之間的通訊以及管理各個模塊之間的協(xié)作,導(dǎo)航信息服務(wù)模塊用于為第三方軟件提供對系統(tǒng)的連接,JNI模塊用于調(diào)用GIS導(dǎo)航引擎。其中,各個模塊的特征如下導(dǎo)航信息服務(wù)模塊在后臺運行,通過規(guī)定的AIDL接口為第三方軟件提供導(dǎo)航汽車信息管理操作。GIS導(dǎo)航引擎采用C++編程語言編寫,調(diào)用時需通過JOT模塊,能進行地圖檢索、地圖繪制、規(guī)劃導(dǎo)航以及個人導(dǎo)航信息管理等操作。JNI模塊采用Java語言編寫,一方面監(jiān)聽安卓系統(tǒng)GPS模塊的GPS信息并傳遞給GIS 導(dǎo)航引擎,一方面為所有導(dǎo)航服務(wù)或者用戶交互界面關(guān)于GIS地圖引擎的操作以及GIS地圖引擎對安卓系統(tǒng)調(diào)用都通過JNI接口傳遞。用戶界面模塊是基于安卓系統(tǒng)框架下的Activity組件開發(fā),用于顯示導(dǎo)航和系統(tǒng)信息、響應(yīng)用戶操作,通過系統(tǒng)框架調(diào)用JNI處理用戶操作請求。
2.如權(quán)利要求1所述的基于安卓系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng),其特征在于所述導(dǎo)航信息服務(wù)模塊中包含客戶端綁定模塊實現(xiàn)并管理第三方軟件對本系統(tǒng)的連接的接口綁定,根據(jù)第三方軟件與本系統(tǒng)的連接狀態(tài)管理其通訊接口的通斷。AIDL服務(wù)接口模塊為單向接口,編譯器通過解析AIDL接口文件,生成標(biāo)準(zhǔn)的AIDL接口類,汽車信息服務(wù)通過繼承該AIDL接口類實現(xiàn)給定的功能接口。AIDL回調(diào)模塊采用AIDL接口編寫,在綁定服務(wù)后向?qū)Ш狡囆畔⒎?wù)注冊回調(diào)函數(shù),第三方客戶端繼承AIDL接口類,導(dǎo)航汽車信息服務(wù)可以通過回調(diào)函數(shù)反饋信息給第三方軟件。
3.根據(jù)權(quán)利要求1所述的系統(tǒng)的啟動方法,其特征在于包括如下一種或一種以上的啟動方式1)系統(tǒng)的廣播監(jiān)聽模塊接收到安卓系統(tǒng)開機成功的系統(tǒng)廣播,啟動導(dǎo)航管理系統(tǒng),加載GIS地圖引擎并初始化JNI之后,啟動導(dǎo)航管理服務(wù);2)第三方連接導(dǎo)航管理服務(wù),若導(dǎo)航管理系統(tǒng)未啟動,啟動導(dǎo)航管理系統(tǒng),加載GIS地圖引擎并初始化JNI之后,如果導(dǎo)航管理服務(wù)尚未啟動,啟動導(dǎo)航管理服務(wù);3)系統(tǒng)手動啟動,如果導(dǎo)航管理系統(tǒng)沒有啟動,啟動導(dǎo)航管理系統(tǒng),加載GIS地圖引擎并初始化JNI之后,啟動導(dǎo)航管理服務(wù),最后啟動用戶界面。
4.根據(jù)權(quán)利要求1所述的系統(tǒng)的導(dǎo)航信息服務(wù)方法,其特征在于包括如下步驟51)第三方軟件請求導(dǎo)航信息服務(wù),導(dǎo)航信息服務(wù)模塊創(chuàng)建并調(diào)用接口供第三方軟件連接;52)第三方軟件向服務(wù)注冊回調(diào)接口;53)服務(wù)本地注冊回調(diào)接口,完成綁定;54)第三方軟件調(diào)用導(dǎo)航信息服務(wù)接口,通過JNI使用GIS地圖引擎處理響應(yīng)服務(wù)請求;55)GIS地圖引擎調(diào)用JNI模塊返回處理結(jié)果或數(shù)據(jù),JNI模塊通過調(diào)用管理服務(wù)的回調(diào)函數(shù)將結(jié)果返回給第三方軟件。
5.根據(jù)權(quán)利要求1所述的系統(tǒng)的GIS地圖引擎方法,其特征在于包括如下步驟 SiD導(dǎo)航汽車信息管理系統(tǒng)啟動;·512)GIS地圖引擎進行初始化,包括設(shè)置地圖顯示數(shù)據(jù)、加載地圖數(shù)據(jù)、獲取GPS信息;·513)用戶或服務(wù)可請求操作,通過JNI接口通訊,返回操作結(jié)果或者數(shù)據(jù)。
全文摘要
本發(fā)明為一種基于安卓系統(tǒng)的導(dǎo)航汽車信息管理系統(tǒng),包括系統(tǒng)框架、導(dǎo)航信息服務(wù)模塊、GIS導(dǎo)航引擎、JNI模塊和用戶界面模塊,各模塊之間的通訊和協(xié)作由系統(tǒng)框架實現(xiàn)和管理,導(dǎo)航信息模塊為供第三方軟件請求導(dǎo)航信息的后臺模塊,而對GIS導(dǎo)航引擎調(diào)用需經(jīng)過JNI模塊。通過本系統(tǒng),用戶無需額外購買導(dǎo)航儀即能方便高效地完成導(dǎo)航任務(wù),而且本系統(tǒng)還能為第三方軟件提供導(dǎo)航信息,大大提高安卓手機系統(tǒng)的實用性。
文檔編號H04M1/725GK102323883SQ20111026089
公開日2012年1月18日 申請日期2011年9月5日 優(yōu)先權(quán)日2011年9月5日
發(fā)明者李慶建 申請人:廣東東納軟件科技有限公司