本發(fā)明涉及汽車技術(shù)領(lǐng)域,尤其涉及一種藍(lán)牙的切換方法及裝置。
背景技術(shù):
車機(jī)是安裝在汽車?yán)锩娴能囕d信息娛樂產(chǎn)品的簡稱,功能在于實現(xiàn)人與車,車與外界(車與車)的信息通訊。市場上的主流車機(jī)采用android操作系統(tǒng),具備3G/4G通訊模塊及藍(lán)牙通訊模塊,車機(jī)上搭載了一種集車輛體檢(診斷)、行車軌跡、實時監(jiān)控、車友車群、消息報警等功能的APP應(yīng)用系統(tǒng),以此滿足用戶日常行車的應(yīng)用需求。
目前,數(shù)據(jù)采集作為一種服務(wù)模塊移植到車機(jī)上,通過藍(lán)牙通道,與OBD(on-board diagnostic,車載診斷系統(tǒng))終端進(jìn)行無線通訊,實時獲取車輛數(shù)據(jù),并將數(shù)據(jù)上傳給數(shù)據(jù)平臺,可以為車機(jī)APP提供實時監(jiān)控的數(shù)據(jù)服務(wù)模塊。然而,而車機(jī)系統(tǒng)中的數(shù)據(jù)采集功能、體檢功能、汽車診斷設(shè)備的升級功能等對汽車診斷設(shè)備的藍(lán)牙都是獨占方式,汽車診斷設(shè)備的藍(lán)牙同一時間只能滿足一種設(shè)備的某一個應(yīng)用連接。如果使用現(xiàn)有的藍(lán)牙連接機(jī)制,車機(jī)通電后,若數(shù)據(jù)采集服務(wù)模塊與汽車診斷設(shè)備的藍(lán)牙連接,那么需要體檢或升級時,體檢或升級應(yīng)用程序無法成功連接藍(lán)牙,導(dǎo)致體檢或升級功能失效;同樣,體檢或升級過程中如果數(shù)據(jù)采集服務(wù)模塊連接藍(lán)牙,也無法連接成功。因此,這種藍(lán)牙連接實現(xiàn)功能單一,不能滿足車機(jī)藍(lán)牙系統(tǒng)的復(fù)雜使用情況。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于提出一種藍(lán)牙的切換方法及裝置,旨在協(xié)調(diào)車機(jī)中多個應(yīng)用程序與汽車診斷設(shè)備的藍(lán)牙之間的連接,保證藍(lán)牙連接的快速有效切換,滿足車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
為實現(xiàn)上述目的,本發(fā)明提供一種藍(lán)牙的切換方法,所述方法包括如下步驟:
數(shù)據(jù)采集服務(wù)模塊建立與汽車診斷設(shè)備的藍(lán)牙之間的連接;
在車機(jī)APP啟動后,若所述車機(jī)APP接收到升級或體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理;
在所述處理完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。
可選地,所述在車機(jī)APP啟動后,若所述車機(jī)APP接收到升級或體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理的步驟包括:
在車機(jī)APP啟動后,若所述車機(jī)APP接收到所述升級指令,則根據(jù)所述升級指令檢測汽車診斷設(shè)備是否存在新版本;
在檢測到汽車診斷設(shè)備存在新版本時,所述車機(jī)APP將所述升級指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊;
所述數(shù)據(jù)采集服務(wù)模塊根據(jù)所述升級指令斷開與所述藍(lán)牙之間的連接;所述體檢服務(wù)模塊根據(jù)所述升級指令建立與所述藍(lán)牙的連接,并根據(jù)所述升級指令和所述新版本對所述汽車診斷設(shè)備進(jìn)行升級;
所述在所述處理完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接的步驟包括:
在所述升級完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。
可選地,所述在檢測到汽車診斷設(shè)備存在新版本時,所述車機(jī)APP將所述升級指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊的步驟包括:
在檢測到汽車診斷設(shè)備存在新版本時,所述車機(jī)APP通過廣播發(fā)送所述升級指令。
可選地,所述在車機(jī)APP啟動后,若所述車機(jī)APP接收到升級或體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理的步驟還包括:
在車機(jī)APP啟動后,若所述車機(jī)APP接收到所述體檢指令,則將所述體檢指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊;
所述數(shù)據(jù)采集服務(wù)模塊根據(jù)所述體檢指令斷開與所述藍(lán)牙之間的連接;所述體檢服務(wù)模塊根據(jù)所述體檢指令建立與所述藍(lán)牙的連接,并根據(jù)所述體檢指令對汽車進(jìn)行體檢;
所述在所述處理完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接的步驟還包括:
在所述體檢完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。
可選地,所述在車機(jī)APP啟動后,若所述車機(jī)APP接收到所述體檢指令,則將所述體檢指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊的步驟包括:
在車機(jī)APP啟動后,若所述車機(jī)APP接收到所述體檢指令,則所述車機(jī)APP通過廣播發(fā)送所述體檢指令。
此外,為實現(xiàn)上述目的,本發(fā)明還提供一種藍(lán)牙的切換裝置,所述裝置包括:
數(shù)據(jù)采集服務(wù)模塊,用于建立與汽車診斷設(shè)備的藍(lán)牙之間的連接;
車機(jī)APP模塊,用于在車機(jī)APP啟動后,接收升級或體檢指令;
所述數(shù)據(jù)采集服務(wù)模塊還用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令斷開與所述藍(lán)牙之間的連接;
體檢服務(wù)模塊,用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理;
所述數(shù)據(jù)采集服務(wù)模塊還用于在所述處理完成時,重新建立與所述藍(lán)牙之間的連接。
可選地,所述車機(jī)APP模塊還用于在車機(jī)APP啟動后,若接收到所述升級指令,則根據(jù)所述升級指令檢測汽車診斷設(shè)備是否存在新版本,在檢測到汽車診斷設(shè)備存在新版本時,將所述升級指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊;
所述數(shù)據(jù)采集服務(wù)模塊還用于根據(jù)所述升級指令斷開與所述藍(lán)牙之間的連接;
所述體檢服務(wù)模塊還用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級指令建立與所述藍(lán)牙的連接,并根據(jù)所述升級指令和所述新版本對所述汽車診斷設(shè)備進(jìn)行升級;
所述數(shù)據(jù)采集服務(wù)模塊還用于在所述升級完成時,重新建立與所述藍(lán)牙之間的連接。
可選地,所述車機(jī)APP模塊還用于在檢測到汽車診斷設(shè)備存在新版本時,通過廣播發(fā)送所述升級指令。
可選地,所述車機(jī)APP模塊還用于在車機(jī)APP啟動后,若接收到所述體檢指令,則將所述體檢指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊;
所述數(shù)據(jù)采集服務(wù)模塊還用于根據(jù)所述體檢指令斷開與所述藍(lán)牙之間的連接;
所述體檢服務(wù)模塊還用于根據(jù)所述體檢指令建立與所述藍(lán)牙的連接,并對汽車進(jìn)行體檢;
所述數(shù)據(jù)采集服務(wù)模塊還用于在所述體檢完成時,重新建立與所述藍(lán)牙之間的連接。
可選地,所述車機(jī)APP模塊還用于在啟動后,若接收到所述體檢指令,則通過廣播發(fā)送所述體檢指令。
本發(fā)明數(shù)據(jù)采集服務(wù)模塊建立與汽車診斷設(shè)備的藍(lán)牙之間的連接;在車機(jī)APP啟動后,若所述車機(jī)APP接收到升級或體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理;在所述處理完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。通過上述方式,車機(jī)通電后,數(shù)據(jù)采集服務(wù)模塊啟動并連接汽車診斷設(shè)備的藍(lán)牙,需要體檢或升級時,汽車診斷設(shè)備的藍(lán)牙迅速切換到與體檢服務(wù)模塊連接,實現(xiàn)體檢或升級功能;體檢或升級完成后,汽車診斷設(shè)備的藍(lán)牙迅速切換回與數(shù)據(jù)采集服務(wù)模塊連接,實現(xiàn)車輛數(shù)據(jù)的實時采集。本發(fā)明通過汽車診斷設(shè)備的藍(lán)牙與車機(jī)應(yīng)用程序連接間的快速切換,避免了藍(lán)牙資源的搶占和CPU資源的浪費,滿足了車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
附圖說明
圖1為本發(fā)明藍(lán)牙設(shè)備的切換方法第一實施例的流程示意圖;
圖2為本發(fā)明第一實施例中汽車通訊系統(tǒng)的總體結(jié)構(gòu)示意圖;
圖3為本發(fā)明第一實施例中藍(lán)牙通訊通道的數(shù)據(jù)流向示意圖;
圖4為本發(fā)明藍(lán)牙設(shè)備的切換方法第二實施例的流程示意圖;
圖5為本發(fā)明藍(lán)牙設(shè)備的切換方法第三實施例的流程示意圖;
圖6為本發(fā)明藍(lán)牙設(shè)備的切換方法第四實施例的流程示意圖;
圖7為本發(fā)明藍(lán)牙設(shè)備的切換裝置第一實施例的功能模塊示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進(jìn)一步說明。
具體實施方式
應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明提供一種藍(lán)牙的切換方法。
參照圖1,圖1為本發(fā)明藍(lán)牙的切換方法第一實施例的流程示意圖,所述藍(lán)牙的切換方法包括:
步驟S100,數(shù)據(jù)采集服務(wù)模塊建立與汽車診斷設(shè)備的藍(lán)牙之間的連接。
本實施例中以汽車診斷設(shè)備為golo 1s(一種藍(lán)牙診斷接頭,型號為1s)為例進(jìn)行說明,當(dāng)然,具體實施中還可以根據(jù)實際需要使用其他汽車診斷設(shè)備,可進(jìn)行靈活選擇。
參照圖2,汽車通訊系統(tǒng)由車機(jī)應(yīng)用系統(tǒng)、golo 1s和OBD(On-Board Diagnostic,車載診斷系統(tǒng))組成,OBD用于隨時監(jiān)控汽車多個系統(tǒng)和部件,如發(fā)動機(jī)、排放控制系統(tǒng)、燃油系統(tǒng)等。當(dāng)車機(jī)用戶將golo 1s的接頭與OBD的接口連接后,車機(jī)上的數(shù)據(jù)采集服務(wù)模塊就可以通過golo 1s的藍(lán)牙與OBD終端進(jìn)行無線通訊,實時獲取OBD檢測到的車輛數(shù)據(jù),并通過互聯(lián)網(wǎng)將獲取到的車輛數(shù)據(jù)上傳到數(shù)據(jù)平臺,數(shù)據(jù)平臺對數(shù)據(jù)進(jìn)行解析計算,再將車輛行程數(shù)據(jù)、報警等展示給車機(jī)應(yīng)用系統(tǒng)。
具體地,作為一種實施方式,車機(jī)開機(jī)后,android系統(tǒng)發(fā)送開機(jī)廣播:android.intent.action.BOOT_COMPLETED,數(shù)據(jù)采集服務(wù)模塊收到廣播后啟動,并且判斷本地是否保存了藍(lán)牙地址,如果本地保存了藍(lán)牙地址,則直接連接本地藍(lán)牙地址,如果本地沒有保存藍(lán)牙地址,則彈出藍(lán)牙設(shè)備列表搜索設(shè)備,讓用戶選擇需要連接的藍(lán)牙設(shè)備,本實施例中用戶選擇連接golo 1s的藍(lán)牙,然后數(shù)據(jù)采集服務(wù)模塊建立與golo 1s的藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通訊通道,數(shù)據(jù)采集服務(wù)模塊可以實時采集OBD檢測到的車輛數(shù)據(jù)。
步驟S200,在車機(jī)APP啟動后,若所述車機(jī)APP接收到升級或體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)所述升級或體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理。
參照圖3,車機(jī)APP、數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊通過藍(lán)牙通訊通道與golo 1s終端進(jìn)行通訊。數(shù)據(jù)采集服務(wù)模塊即為圖中所示的數(shù)據(jù)采集服務(wù),體檢服務(wù)模塊即為圖中所示的體檢服務(wù),可以將數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊認(rèn)為是兩個沒有操作界面的應(yīng)用程序。
具體地,在車機(jī)開機(jī)后,用戶可以點擊車機(jī)中各車機(jī)APP圖標(biāo),以啟動對應(yīng)的車機(jī)APP,當(dāng)然也可以在車機(jī)開機(jī)后,自動啟動各車機(jī)APP。在車機(jī)APP啟動后,若車機(jī)APP接收到用戶觸發(fā)的golo 1s升級指令,則檢測golo 1s是否存在新版本,若檢測到golo 1s存在新版本,則將升級指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊,根據(jù)升級指令,數(shù)據(jù)采集服務(wù)模塊斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊建立與golo 1s藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊可以獲取升級數(shù)據(jù)并進(jìn)行g(shù)olo 1s的升級。具體實施中升級指令還可以不通過用戶觸發(fā)產(chǎn)生,而是根據(jù)預(yù)先設(shè)置的定時升級功能產(chǎn)生升級指令,比如,用戶可以預(yù)先設(shè)置一個定時升級周期,車機(jī)APP根據(jù)設(shè)定的升級周期自動獲取升級指令。
在車機(jī)APP啟動后,若車機(jī)APP接收到用戶觸發(fā)的體檢指令,則將體檢指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊,根據(jù)體檢指令,數(shù)據(jù)采集服務(wù)模塊斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊建立與golo 1s藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊可以獲取OBD檢測到的數(shù)據(jù),并根據(jù)所獲取的數(shù)據(jù)進(jìn)行車輛體檢。具體實施中體檢指令還可以不通過用戶觸發(fā)產(chǎn)生,而是根據(jù)預(yù)先設(shè)置的定時體檢功能產(chǎn)生體檢指令,比如,用戶可以預(yù)先設(shè)置一個定時體檢周期,車機(jī)APP根據(jù)設(shè)定的體檢周期自動獲取體檢指令。
步驟S300,在所述處理完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。
具體地,在golo 1s升級完成時,車機(jī)APP可以通過廣播方式告知數(shù)據(jù)采集服務(wù)模塊,數(shù)據(jù)采集服務(wù)模塊接收到廣播后重新建立與與golo 1s的藍(lán)牙之間的連接。當(dāng)然,車機(jī)APP也可以不通過廣播的方式告知數(shù)據(jù)采集服務(wù)模塊,比如直接發(fā)送升級結(jié)束指令給數(shù)據(jù)采集服務(wù)模塊,數(shù)據(jù)采集服務(wù)模塊接收到升級結(jié)束指令后重新建立與golo 1s的藍(lán)牙之間的連接。
在車輛體檢完成時,車機(jī)APP可以通過廣播方式告知數(shù)據(jù)采集服務(wù)模塊,數(shù)據(jù)采集服務(wù)模塊接收到廣播后重新建立與golo 1s的藍(lán)牙之間的連接。當(dāng)然,車機(jī)APP也可以不通過廣播的方式告知數(shù)據(jù)采集服務(wù)模塊,比如直接發(fā)送體檢結(jié)束指令給數(shù)據(jù)采集服務(wù)模塊,數(shù)據(jù)采集服務(wù)模塊接收到體檢結(jié)束指令后重新建立與golo 1s的藍(lán)牙之間的連接。
在本實施例中,車機(jī)開機(jī)后,數(shù)據(jù)采集服務(wù)模塊建立與汽車診斷設(shè)備的藍(lán)牙之間的連接;在車機(jī)APP啟動后,若所述車機(jī)APP接收到升級或體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理;在所述處理完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。由于車機(jī)系統(tǒng)中的數(shù)據(jù)采集功能、體檢功能、汽車診斷設(shè)備的升級功能等對汽車診斷設(shè)備的藍(lán)牙都是獨占方式,汽車診斷設(shè)備的藍(lán)牙同一時間只能滿足一種設(shè)備的某一個應(yīng)用程序連接,在有多個應(yīng)用程序試圖連接藍(lán)牙的情況下,會造成藍(lán)牙資源的搶占和CPU資源的浪費,而本實施例通過廣播方式建立數(shù)據(jù)采集服務(wù)模塊與golo 1s的藍(lán)牙之間的連接,在車機(jī)APP啟動后,根據(jù)車機(jī)APP發(fā)送的升級或體檢指令將golo 1s的藍(lán)牙切換到與體檢服務(wù)模塊連接,完成對應(yīng)的升級或體檢功能,既保證了數(shù)據(jù)采集服務(wù)模塊在golo 1s的藍(lán)牙空閑時與其保持連接,又避免了藍(lán)牙資源的搶占和CPU資源的浪費,滿足了車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
進(jìn)一步地,參照圖4,圖4為本發(fā)明藍(lán)牙設(shè)備的切換方法第二實施例的流程示意圖。
基于上述圖1所示的實施例,所述步驟S200包括:
步驟S210,在車機(jī)APP啟動后,若所述車機(jī)APP接收到升級指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級指令建立與所述藍(lán)牙的連接,并進(jìn)行汽車診斷設(shè)備的升級。
步驟S220,在車機(jī)APP啟動后,若所述車機(jī)APP接收到體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行車輛體檢。
所述步驟S300包括:
步驟S310,在所述升級完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。
步驟S320,在所述體檢完成時,所述數(shù)據(jù)采集服務(wù)模塊重新建立與所述藍(lán)牙之間的連接。
具體地,在車機(jī)APP啟動后,若車機(jī)APP接收到用戶觸發(fā)的golo 1s升級指令,則檢測golo 1s是否存在新版本,若檢測到golo 1s存在新版本,則車機(jī)APP通過廣播將升級指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊,根據(jù)升級指令,數(shù)據(jù)采集服務(wù)模塊斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊建立與golo 1s藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊可以獲取升級數(shù)據(jù)并進(jìn)行g(shù)olo 1s的升級。
golo 1s升級完成后,golo 1s進(jìn)行重啟,重啟完成后,車機(jī)APP發(fā)送升級結(jié)束廣播:stopupgrade,數(shù)據(jù)采集服務(wù)模塊收到廣播后,與golo 1s藍(lán)牙重新建立連接。
在車機(jī)APP啟動后,若車機(jī)APP接收到用戶觸發(fā)的體檢指令,則通過廣播將體檢指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊,根據(jù)體檢指令,數(shù)據(jù)采集服務(wù)模塊斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊建立與golo1s的藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊可以獲取OBD檢測到的數(shù)據(jù),并根據(jù)所獲取的數(shù)據(jù)進(jìn)行車輛體檢。
車輛體檢完成后,車機(jī)APP發(fā)送體檢結(jié)束廣播:InspectionProcessActicity.stopdiagnose,數(shù)據(jù)采集服務(wù)模塊收到廣播后,與golo1s藍(lán)牙重新建立連接。
在本實施例中,在車機(jī)APP啟動后,若車機(jī)APP接收到用戶觸發(fā)的升級指令,且檢測到汽車診斷設(shè)備存在新版本,則將汽車診斷設(shè)備的藍(lán)牙切換到與體檢服務(wù)模塊連接,體檢服務(wù)模塊根據(jù)新版本對汽車診斷設(shè)備進(jìn)行升級,在升級完成時,數(shù)據(jù)采集服務(wù)模塊與汽車診斷設(shè)備的藍(lán)牙重新建立連接;若車機(jī)APP接收到用戶觸發(fā)的體檢指令,則將汽車診斷設(shè)備的藍(lán)牙切換到與體檢服務(wù)模塊連接,體檢服務(wù)模塊根據(jù)體檢指令對汽車進(jìn)行體檢,在體檢完成時,數(shù)據(jù)采集服務(wù)模塊與汽車診斷設(shè)備的藍(lán)牙重新建立連接。本實施例通過golo 1s的藍(lán)牙在數(shù)據(jù)采集服務(wù)模塊、車機(jī)APP和體檢服務(wù)模塊三者之間的有效切換,保證了藍(lán)牙連接不沖突,使車機(jī)實現(xiàn)了車輛數(shù)據(jù)實時采集、golo 1s升級和車輛體檢等功能,滿足了車機(jī)藍(lán)牙系統(tǒng)的復(fù)雜使用情況。
進(jìn)一步地,參照圖5,圖5為本發(fā)明藍(lán)牙設(shè)備的切換方法第三實施例的流程示意圖,基于上述圖4所示的實施例,所述步驟S210包括:
步驟S211,在車機(jī)APP啟動后,若所述車機(jī)APP接收到所述升級指令,則根據(jù)所述升級指令檢測汽車診斷設(shè)備是否存在新版本。
步驟S212,在檢測到汽車診斷設(shè)備存在新版本時,所述車機(jī)APP將所述升級指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊。
步驟S213,所述數(shù)據(jù)采集服務(wù)模塊根據(jù)所述升級指令斷開與所述藍(lán)牙之間的連接,所述體檢服務(wù)模塊根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級指令建立與所述藍(lán)牙的連接,并根據(jù)所述升級指令和所述新版本對所述汽車診斷設(shè)備進(jìn)行升級。
具體地,作為一種實施方式,在車機(jī)APP啟動后,若車機(jī)APP接收到用戶觸發(fā)的golo 1s升級指令,則檢測golo 1s是否存在新版本,若檢測到golo 1s存在新版本,則車機(jī)APP發(fā)送升級廣播:startupgrade,或者說通過廣播的方式發(fā)送升級指令:startupgrade,數(shù)據(jù)采集服務(wù)模塊接收到該升級廣播或者說升級指令后斷開與golo 1s藍(lán)牙的連接,同時可以向體檢服務(wù)模塊發(fā)送中斷狀態(tài),然后體檢服務(wù)模塊根據(jù)數(shù)據(jù)采集服務(wù)模塊的中斷狀態(tài)建立與golo 1s藍(lán)牙的連接,根據(jù)車機(jī)APP發(fā)送的升級指令和新版本對golo 1s進(jìn)行升級。當(dāng)然數(shù)據(jù)采集服務(wù)模塊也可以不向體檢服務(wù)模塊發(fā)送中斷狀態(tài),比如體檢服務(wù)模塊可以接收車機(jī)APP發(fā)送的升級廣播,在接收升級廣播后,相隔預(yù)設(shè)時間,等待數(shù)據(jù)采集服務(wù)模塊斷開與golo 1s藍(lán)牙的連接,然后體檢服務(wù)模塊建立與golo 1s藍(lán)牙的連接。
進(jìn)一步地,為方便用戶使用,在對golo 1s進(jìn)行升級時,數(shù)據(jù)采集服務(wù)模塊還可以設(shè)置升級標(biāo)志,用戶可以根據(jù)升級標(biāo)志掌握golo 1s升級狀態(tài),避免升級過程中藍(lán)牙通訊出現(xiàn)異常,導(dǎo)致golo 1s一直處于升級狀態(tài)或升級不成功。例如,如果數(shù)據(jù)采集服務(wù)模塊的升級標(biāo)志置位時間超過了一定的預(yù)估時間,那么用戶可以強制斷開體檢服務(wù)模塊與golo 1s的藍(lán)牙之間的連接,結(jié)束golo1s的升級,重新讓數(shù)據(jù)采集服務(wù)模塊與golo 1s的藍(lán)牙建立連接。
在本實施例中,車機(jī)APP啟動后,若車機(jī)APP接收到升級指令,則檢測汽車診斷設(shè)備是否有新版本,若有則發(fā)送升級廣播,數(shù)據(jù)采集服務(wù)模塊收到升級廣播后中斷與汽車診斷設(shè)備的藍(lán)牙之間的連接,并向體檢服務(wù)模塊發(fā)送中斷狀態(tài),體檢服務(wù)模塊根據(jù)中斷狀態(tài)建立與所述藍(lán)牙的連接,進(jìn)行汽車診斷設(shè)備的升級。本實施例中各個汽車應(yīng)用程序采用廣播通知的方式來實現(xiàn)進(jìn)程間通訊,協(xié)調(diào)藍(lán)牙設(shè)備的切換,使注冊了廣播接收器的用戶都能夠接收到廣播,擴(kuò)大了通信范圍。同時,數(shù)據(jù)采集服務(wù)模塊在golo 1s升級過程中設(shè)置升級標(biāo)志,可以讓用戶掌握升級狀態(tài),避免升級過程中藍(lán)牙通訊出現(xiàn)異常,影響了數(shù)據(jù)采集服務(wù)模塊對車輛數(shù)據(jù)的實時采集。通過上述方式,本實施例可以協(xié)調(diào)車機(jī)多個應(yīng)用程序與golo 1s的藍(lán)牙之間的連接,保證了藍(lán)牙連接的快速有效切換,滿足了車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
進(jìn)一步地,參照圖6,圖6為本發(fā)明藍(lán)牙的切換方法第四實施例的流程示意圖。基于上述圖4所示的實施例,所述步驟S220包括:
步驟S221,在車機(jī)APP啟動后,若所述車機(jī)APP接收到所述體檢指令,則將所述體檢指令發(fā)送給所述數(shù)據(jù)采集服務(wù)模塊和所述體檢服務(wù)模塊。
步驟S222,所述數(shù)據(jù)采集服務(wù)模塊根據(jù)所述體檢指令斷開與所述藍(lán)牙之間的連接,所述體檢服務(wù)模塊根據(jù)接收到的所述體檢指令建立與所述藍(lán)牙的連接,并根據(jù)所述體檢指令對汽車進(jìn)行體檢。
具體地,作為一種實施方式,在車機(jī)APP啟動后,若車機(jī)APP接收到用戶觸發(fā)的體檢指令,則車機(jī)APP發(fā)送體檢廣播:InspectionProcess Acticity.startdiagnose,或者說通過廣播的方式發(fā)送體檢指令:Acticity.startdiagnose,數(shù)據(jù)采集服務(wù)模塊接收到該體檢廣播或者說體檢指令后斷開與golo 1s藍(lán)牙的連接,同時可以向體檢服務(wù)模塊發(fā)送中斷狀態(tài),體檢服務(wù)模塊根據(jù)數(shù)據(jù)采集服務(wù)模塊的中斷狀態(tài)建立與golo 1s藍(lán)牙的連接,并根據(jù)車機(jī)APP發(fā)送的體檢指令對車輛進(jìn)行體檢。當(dāng)然數(shù)據(jù)采集服務(wù)模塊也可以不向體檢服務(wù)模塊發(fā)送中斷狀態(tài),比如體檢服務(wù)模塊可以接收車機(jī)APP發(fā)送的體檢廣播,在接收體檢廣播后,相隔預(yù)設(shè)時間,等待數(shù)據(jù)采集服務(wù)模塊斷開與golo 1s藍(lán)牙的連接,然后體檢服務(wù)模塊建立與golo 1s藍(lán)牙的連接。
進(jìn)一步地,為方便用戶使用,在對車輛進(jìn)行體檢時,數(shù)據(jù)采集服務(wù)模塊還可以設(shè)置體檢標(biāo)志,用戶可以根據(jù)體檢標(biāo)志掌握車輛體檢狀態(tài),避免體檢過程中藍(lán)牙通訊出現(xiàn)異常,導(dǎo)致golo 1s一直處于體檢狀態(tài)或體檢不成功。例如,如果數(shù)據(jù)采集服務(wù)模塊的體檢標(biāo)志置位時間超過了一定的預(yù)估時間,那么用戶可以強制斷開體檢服務(wù)模塊與golo 1s的藍(lán)牙之間的連接,結(jié)束golo 1s的升級,重新讓數(shù)據(jù)采集服務(wù)模塊與golo 1s的藍(lán)牙建立連接。
在本實施例中,車機(jī)APP啟動后,若接收到體檢指令,則發(fā)送體檢廣播,數(shù)據(jù)采集服務(wù)模塊收到體檢廣播后中斷與汽車診斷設(shè)備的藍(lán)牙之間的連接,并向體檢服務(wù)模塊發(fā)送中斷狀態(tài),體檢服務(wù)模塊根據(jù)中斷狀態(tài)建立與藍(lán)牙的連接,進(jìn)行車輛體檢,并設(shè)置體檢標(biāo)志。本實施例中各個汽車應(yīng)用程序采用廣播通知的方式來實現(xiàn)進(jìn)程間通訊,協(xié)調(diào)藍(lán)牙設(shè)備的切換,使注冊了廣播接收器的用戶都能夠接收到廣播,擴(kuò)大了通信范圍。同時,數(shù)據(jù)采集服務(wù)模塊在golo 1s升級過程中設(shè)置體檢標(biāo)志,可以讓用戶掌握體檢狀態(tài),避免體檢過程中藍(lán)牙通訊出現(xiàn)異常,影響了數(shù)據(jù)采集服務(wù)模塊對車輛數(shù)據(jù)的實時采集。通過上述方式,本實施例可以協(xié)調(diào)車機(jī)多個應(yīng)用程序與golo 1s的藍(lán)牙之間的連接,保證了藍(lán)牙連接的快速有效切換,滿足了車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
本發(fā)明還提供一種藍(lán)牙的切換裝置。
參照圖7,圖7為本發(fā)明藍(lán)牙設(shè)備的切換裝置第一實施例的功能模塊示意圖,所述藍(lán)牙設(shè)備的切換裝置包括:
數(shù)據(jù)采集服務(wù)模塊100,用于建立與汽車診斷設(shè)備的藍(lán)牙之間的連接。
本實施例中以汽車診斷設(shè)備為golo 1s(一種藍(lán)牙診斷接頭,型號1s)為例進(jìn)行說明,當(dāng)然,具體實施中還可以根據(jù)實際需要使用其他汽車診斷設(shè)備,進(jìn)行靈活選擇。
參照圖2,汽車通訊系統(tǒng)由車機(jī)應(yīng)用系統(tǒng)、golo 1s和OBD(On-Board Diagnostic,車載診斷系統(tǒng))組成,OBD用于隨時監(jiān)控汽車多個系統(tǒng)和部件,如發(fā)動機(jī)、排放控制系統(tǒng)、燃油系統(tǒng)等。當(dāng)車機(jī)用戶將golo 1s的接頭與OBD的接口連接后,車機(jī)上的數(shù)據(jù)采集服務(wù)模塊100就可以通過golo 1s的藍(lán)牙與OBD終端進(jìn)行無線通訊,實時獲取OBD檢測到的車輛數(shù)據(jù),并通過互聯(lián)網(wǎng)將獲取到的車輛數(shù)據(jù)上傳到數(shù)據(jù)平臺,數(shù)據(jù)平臺對數(shù)據(jù)進(jìn)行解析計算,再將車輛行程數(shù)據(jù)、報警等展示給車機(jī)應(yīng)用系統(tǒng)。
具體地,作為一種實施方式,車機(jī)開機(jī)后,android系統(tǒng)發(fā)送開機(jī)廣播:android.intent.action.BOOT_COMPLETED,數(shù)據(jù)采集服務(wù)模塊100收到廣播后啟動,并且判斷本地是否保存了藍(lán)牙地址,如果本地保存了藍(lán)牙地址,則直接連接本地藍(lán)牙地址,如果本地沒有保存藍(lán)牙地址,則彈出藍(lán)牙設(shè)備列表搜索設(shè)備,讓用戶選擇需要連接的藍(lán)牙設(shè)備,本實施例中用戶選擇連接golo 1s的藍(lán)牙,數(shù)據(jù)采集模塊100建立與golo 1s的藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通訊通道,數(shù)據(jù)采集模塊100可以實時采集OBD檢測到的車輛數(shù)據(jù)。
車機(jī)APP模塊200,用于在車機(jī)APP啟動后,接收升級或體檢指令。
所述數(shù)據(jù)采集服務(wù)模塊100還用于根據(jù)所述車機(jī)APP發(fā)送的所述升級或體檢指令斷開與所述藍(lán)牙之間的連接。
體檢服務(wù)模塊300,用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理。
參照圖3,車機(jī)APP、數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊通過藍(lán)牙通訊通道與golo 1s終端進(jìn)行通訊。數(shù)據(jù)采集服務(wù)模塊即為圖中所示的數(shù)據(jù)采集服務(wù),體檢服務(wù)模塊即為圖中所示的體檢服務(wù),可以將數(shù)據(jù)采集服務(wù)模塊和體檢服務(wù)模塊認(rèn)為是兩個沒有操作界面的應(yīng)用程序。
具體地,在車機(jī)開機(jī)后,用戶可以點擊車機(jī)中各車機(jī)APP圖標(biāo),以啟動對應(yīng)的車機(jī)APP模塊200,當(dāng)然也可以在車機(jī)開機(jī)后,自動啟動各車機(jī)APP模塊200。在車機(jī)APP模塊200啟動后,若車機(jī)APP模塊200接收到用戶觸發(fā)的golo 1s升級指令,則檢測golo 1s是否存在新版本,若檢測到golo 1s存在新版本,則將升級指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊100和體檢服務(wù)模塊300,根據(jù)升級指令,數(shù)據(jù)采集服務(wù)模塊100斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊300建立與golo 1s藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊300可以獲取升級數(shù)據(jù)并進(jìn)行g(shù)olo 1s的升級。具體實施中升級指令還可以不通過用戶觸發(fā)產(chǎn)生,而是根據(jù)預(yù)先設(shè)置的定時升級功能產(chǎn)生升級指令,比如,用戶可以預(yù)先設(shè)置一個定時升級周期,車機(jī)APP模塊200根據(jù)設(shè)定的升級周期自動獲取升級指令。
在車機(jī)APP模塊200啟動后,若車機(jī)APP模塊200接收到用戶觸發(fā)的體檢指令,則將體檢指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊100和體檢服務(wù)模塊300,根據(jù)體檢指令,數(shù)據(jù)采集服務(wù)模塊100斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊300建立與golo 1s藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊300可以獲取OBD檢測到的數(shù)據(jù),并根據(jù)所獲取的數(shù)據(jù)進(jìn)行車輛體檢。具體實施中體檢指令還可以不通過用戶觸發(fā)產(chǎn)生,而是根據(jù)預(yù)先設(shè)置的定時體檢功能產(chǎn)生體檢指令,比如,用戶可以預(yù)先設(shè)置一個定時體檢周期,車機(jī)APP模塊200根據(jù)設(shè)定的體檢周期自動獲取體檢指令。
所述數(shù)據(jù)采集服務(wù)模塊100還用于在所述處理完成時,重新建立與所述藍(lán)牙之間的連接。
具體地,在golo 1s升級完成時,車機(jī)APP模塊200可以通過廣播方式告知數(shù)據(jù)采集服務(wù)模塊100,數(shù)據(jù)采集服務(wù)模塊100接收到廣播后重新建立與與golo1s的藍(lán)牙之間的連接。當(dāng)然,車機(jī)APP模塊200也可以不通過廣播的方式告知數(shù)據(jù)采集服務(wù)模塊100,比如直接發(fā)送升級結(jié)束指令給數(shù)據(jù)采集服務(wù)模塊100,數(shù)據(jù)采集服務(wù)模塊100接收到升級結(jié)束指令后重新建立與golo 1s的藍(lán)牙之間的連接。
在車輛體檢完成時,車機(jī)APP模塊200可以通過廣播方式告知數(shù)據(jù)采集服務(wù)模塊100,數(shù)據(jù)采集服務(wù)模塊100接收到廣播后重新建立與golo 1s的藍(lán)牙之間的連接。當(dāng)然,車機(jī)APP模塊200也可以不通過廣播的方式告知數(shù)據(jù)采集服務(wù)模塊100,比如直接發(fā)送體檢結(jié)束指令給數(shù)據(jù)采集服務(wù)模塊100,數(shù)據(jù)采集服務(wù)模塊100接收到體檢結(jié)束指令后重新建立與golo 1s的藍(lán)牙之間的連接。
在本實施例中,車機(jī)開機(jī)后,數(shù)據(jù)采集模塊100建立與汽車診斷設(shè)備的藍(lán)牙之間的連接;在車機(jī)APP模塊200啟動后,若車機(jī)APP接收到升級或體檢指令,則所述數(shù)據(jù)采集服務(wù)模塊100根據(jù)接收到所述車機(jī)APP模塊200發(fā)送的升級或體檢指令斷開與所述藍(lán)牙之間的連接,體檢服務(wù)模塊300根據(jù)接收到所述車機(jī)APP模塊200發(fā)送的升級或體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行對應(yīng)處理;在所述處理完成時,所述數(shù)據(jù)采集服務(wù)模塊100重新建立與所述藍(lán)牙之間的連接。由于車機(jī)系統(tǒng)中的數(shù)據(jù)采集功能、體檢功能、汽車診斷設(shè)備的升級功能等對汽車診斷設(shè)備的藍(lán)牙都是獨占方式,汽車診斷設(shè)備的藍(lán)牙同一時間只能滿足一種設(shè)備的某一個應(yīng)用連接,在有多個應(yīng)用程序試圖連接藍(lán)牙的情況下,會造成藍(lán)牙資源的搶占和CPU資源的浪費,而本實施例通過廣播方式建立數(shù)據(jù)采集服務(wù)模塊100與golo 1s的藍(lán)牙之間的連接,在車機(jī)APP模塊200啟動后,根據(jù)車機(jī)APP模塊200發(fā)送的升級或體檢指令將golo 1s的藍(lán)牙切換到與體檢服務(wù)模塊300連接,完成對應(yīng)的升級或體檢功能,既保證了數(shù)據(jù)采集服務(wù)模塊100在golo 1s的藍(lán)牙空閑時與其保持連接,又避免了藍(lán)牙資源的搶占和CPU資源的浪費,滿足了車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
進(jìn)一步地,參照圖7,所述車機(jī)APP模塊200還用于在車機(jī)APP啟動后,接收升級指令;所述數(shù)據(jù)采集服務(wù)模塊100還用于根據(jù)所述車機(jī)APP發(fā)送的所述升級指令斷開與所述藍(lán)牙之間的連接;所述體檢服務(wù)模塊300還用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級指令建立與所述藍(lán)牙的連接,并進(jìn)行汽車診斷設(shè)備的升級。
或者,所述車機(jī)APP模塊200還用于在車機(jī)APP啟動后,接收體檢指令;所述數(shù)據(jù)采集服務(wù)模塊100還用于根據(jù)所述車機(jī)APP發(fā)送的所述體檢指令斷開與所述藍(lán)牙之間的連接;所述體檢服務(wù)模塊300還用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行車輛體檢。
所述數(shù)據(jù)采集服務(wù)模塊100還用于:
在所述升級完成時,所述數(shù)據(jù)采集服務(wù)模塊100重新建立與所述藍(lán)牙之間的連接;或者,在所述體檢完成時,所述數(shù)據(jù)采集服務(wù)模塊100重新建立與所述藍(lán)牙之間的連接。
具體地,在車機(jī)APP模塊200啟動后,若車機(jī)APP模塊200接收到用戶觸發(fā)的golo 1s升級指令,則檢測golo 1s是否存在新版本,若檢測到golo 1s存在新版本,則車機(jī)APP模塊200通過廣播將升級指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊100和體檢服務(wù)模塊300,根據(jù)升級指令,數(shù)據(jù)采集服務(wù)模塊100斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊300建立與golo 1s的藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊300可以獲取升級數(shù)據(jù)并進(jìn)行g(shù)olo1s的升級。
golo 1s升級完成后,golo 1s進(jìn)行重啟,重啟完成后,車機(jī)APP模塊200發(fā)送升級結(jié)束廣播:stopupgrade,數(shù)據(jù)采集服務(wù)模塊100收到廣播后,與golo1s藍(lán)牙重新建立連接。
在車機(jī)APP啟動后,若車機(jī)APP模塊200接收到用戶觸發(fā)的體檢指令,則通過廣播將體檢指令發(fā)送給數(shù)據(jù)采集服務(wù)模塊100和體檢服務(wù)模塊300,根據(jù)體檢指令,數(shù)據(jù)采集服務(wù)模塊100斷開與golo 1s的藍(lán)牙之間的連接,體檢服務(wù)模塊300建立與golo 1s的藍(lán)牙之間的連接,通過golo 1s藍(lán)牙通道,體檢服務(wù)模塊300可以獲取OBD檢測到的數(shù)據(jù),并根據(jù)所獲取的數(shù)據(jù)進(jìn)行車輛體檢。
車輛體檢完成后,車機(jī)APP發(fā)送體檢結(jié)束廣播:InspectionProcessActicity.stopdiagnose,數(shù)據(jù)采集服務(wù)模塊100收到廣播后,與golo 1s藍(lán)牙重新建立連接。
在本實施例中,在車機(jī)APP啟動后,若車機(jī)APP模塊200接收到用戶觸發(fā)的升級指令,且檢測到汽車診斷設(shè)備存在新版本,則將汽車診斷設(shè)備的藍(lán)牙切換到與體檢服務(wù)模塊300連接,體檢服務(wù)模塊300根據(jù)新版本對汽車診斷設(shè)備進(jìn)行升級,在升級完成時,數(shù)據(jù)采集服務(wù)模塊100與汽車診斷設(shè)備的藍(lán)牙重新建立連接;若車機(jī)APP模塊200接收到用戶觸發(fā)的體檢指令,則將汽車診斷設(shè)備的藍(lán)牙切換到與體檢服務(wù)模塊300連接,體檢服務(wù)模塊300根據(jù)體檢指令對汽車進(jìn)行體檢,在體檢完成時,數(shù)據(jù)采集服務(wù)模塊100重新建立與汽車診斷設(shè)備的藍(lán)牙之間的連接。本實施例通過golo 1s的藍(lán)牙在數(shù)據(jù)采集服務(wù)模塊100、車機(jī)APP模塊200和體檢服務(wù)模塊300三者之間的有效切換,保證了藍(lán)牙連接不沖突,使車機(jī)實現(xiàn)了車輛數(shù)據(jù)實時采集、golo 1s升級和車輛體檢等功能,滿足了車機(jī)藍(lán)牙系統(tǒng)的復(fù)雜使用情況。
進(jìn)一步地,參照圖7,所述車機(jī)APP模塊200還用于在車機(jī)APP啟動后,接收升級指令;
所述數(shù)據(jù)采集服務(wù)模塊100還用于根據(jù)所述車機(jī)APP發(fā)送的所述升級指令斷開與所述藍(lán)牙之間的連接;
所述體檢服務(wù)模塊300還用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述升級指令建立與所述藍(lán)牙的連接,并進(jìn)行汽車診斷設(shè)備的升級。
具體地,作為一種實施方式,在車機(jī)APP啟動后,若車機(jī)APP模塊200接收到用戶觸發(fā)的golo 1s升級指令,則檢測golo 1s是否存在新版本,若檢測到golo 1s存在新版本,則車機(jī)APP模塊200發(fā)送升級廣播:startupgrade,或者說通過廣播的方式發(fā)送升級指令:startupgrade,數(shù)據(jù)采集服務(wù)模塊100接收到該升級廣播或者說升級指令后斷開與golo 1s藍(lán)牙的連接,同時可以向體檢服務(wù)模塊300發(fā)送中斷狀態(tài),然后體檢服務(wù)模塊300根據(jù)數(shù)據(jù)采集服務(wù)模塊100的中斷狀態(tài)建立與golo 1s藍(lán)牙的連接,根據(jù)所述升級指令和新版本對golo 1s進(jìn)行升級。當(dāng)然數(shù)據(jù)采集服務(wù)模塊100也可以不向體檢服務(wù)模塊300發(fā)送中斷狀態(tài),比如體檢服務(wù)模塊300可以接收車機(jī)APP模塊200發(fā)送的升級廣播,在接收升級廣播后,相隔預(yù)設(shè)時間,等待數(shù)據(jù)采集服務(wù)模塊100斷開與golo 1s藍(lán)牙的連接,然后體檢服務(wù)模塊300建立與golo 1s藍(lán)牙的連接。
進(jìn)一步地,為方便用戶使用,在對golo 1s進(jìn)行升級時,數(shù)據(jù)采集服務(wù)模塊100還可以設(shè)置升級標(biāo)志,用戶可以根據(jù)升級標(biāo)志掌握golo 1s升級狀態(tài),避免升級過程中藍(lán)牙通訊出現(xiàn)異常,導(dǎo)致golo 1s一直處于升級狀態(tài)或升級不成功。例如,如果數(shù)據(jù)采集服務(wù)模塊100的升級標(biāo)志置位時間超過了一定的預(yù)估時間,那么用戶可以強制斷開體檢服務(wù)模塊300與golo 1s的藍(lán)牙之間的連接,結(jié)束golo 1s的升級,重新讓數(shù)據(jù)采集服務(wù)模塊100與golo 1s的藍(lán)牙建立連接。
在本實施例中,車機(jī)APP啟動后,若車機(jī)APP模塊200接收到升級指令,則檢測汽車診斷設(shè)備是否有新版本,若有則發(fā)送升級廣播,數(shù)據(jù)采集服務(wù)模塊100收到升級廣播后中斷與汽車診斷設(shè)備的藍(lán)牙之間的連接,并向體檢服務(wù)模塊300發(fā)送中斷狀態(tài),體檢服務(wù)模塊300根據(jù)中斷狀態(tài)建立與所述藍(lán)牙的連接,進(jìn)行汽車診斷設(shè)備的升級。本實施例中各個汽車應(yīng)用程序采用廣播通知的方式來實現(xiàn)進(jìn)程間通訊,協(xié)調(diào)藍(lán)牙設(shè)備的切換,使注冊了廣播接收器的用戶都能夠接收到廣播,擴(kuò)大了通信范圍。同時,數(shù)據(jù)采集服務(wù)模塊100在golo 1s升級過程中設(shè)置升級標(biāo)志,可以讓用戶掌握升級狀態(tài),避免升級過程中藍(lán)牙通訊出現(xiàn)異常,影響了數(shù)據(jù)采集服務(wù)模塊100對車輛數(shù)據(jù)的實時采集。通過上述方式,本實施例可以協(xié)調(diào)車機(jī)多個應(yīng)用程序與golo 1s的藍(lán)牙之間的連接,保證了藍(lán)牙連接的快速有效切換,滿足了車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
進(jìn)一步地,參照圖7,所述車機(jī)APP模塊200還用于在車機(jī)APP啟動后,接收體檢指令;
所述數(shù)據(jù)采集服務(wù)模塊100還用于根據(jù)所述車機(jī)APP發(fā)送的所述體檢指令斷開與所述藍(lán)牙之間的連接;
所述體檢服務(wù)模塊300還用于根據(jù)接收到所述車機(jī)APP發(fā)送的所述體檢指令建立與所述藍(lán)牙的連接,并進(jìn)行車輛體檢。
具體地,作為一種實施方式,在車機(jī)APP啟動后,若車機(jī)APP模塊200接收到用戶觸發(fā)的體檢指令,則車機(jī)APP模塊200發(fā)送體檢廣播:InspectionProcess Acticity.startdiagnose,或者說通過廣播的方式發(fā)送體檢指令:InspectionProcess Acticity.startdiagnose,數(shù)據(jù)采集服務(wù)模塊100接收到該體檢廣播或者說體檢指令后斷開與golo 1s藍(lán)牙的連接,同時可以向體檢服務(wù)模塊300發(fā)送中斷狀態(tài),體檢服務(wù)模塊300根據(jù)數(shù)據(jù)采集服務(wù)模塊100的中斷狀態(tài)建立與golo 1s藍(lán)牙的連接,并根據(jù)所述體檢指令對車輛進(jìn)行體檢。當(dāng)然數(shù)據(jù)采集服務(wù)模塊100也可以不向體檢服務(wù)模塊300發(fā)送中斷狀態(tài),比如體檢服務(wù)模塊300可以接收車機(jī)APP模塊200發(fā)送的體檢廣播,在接收體檢廣播后,相隔預(yù)設(shè)時間,等待數(shù)據(jù)采集服務(wù)模塊100斷開與golo 1s藍(lán)牙的連接,然后體檢服務(wù)模塊300建立與golo 1s藍(lán)牙的連接。
進(jìn)一步地,為方便用戶使用,在對車輛進(jìn)行體檢時,數(shù)據(jù)采集服務(wù)模塊100還可以設(shè)置體檢標(biāo)志,用戶可以根據(jù)體檢標(biāo)志掌握車輛體檢狀態(tài),避免體檢過程中藍(lán)牙通訊出現(xiàn)異常,導(dǎo)致golo 1s一直處于體檢狀態(tài)或體檢不成功。例如,如果數(shù)據(jù)采集服務(wù)模塊100的體檢標(biāo)志置位時間超過了一定的預(yù)估時間,那么用戶可以強制斷開體檢服務(wù)模塊300與golo 1s的藍(lán)牙之間的連接,結(jié)束golo 1s的升級,重新讓數(shù)據(jù)采集服務(wù)模塊100與golo 1s的藍(lán)牙建立連接。
在本實施例中,車機(jī)APP啟動后,若接收到體檢指令,則發(fā)送體檢廣播,數(shù)據(jù)采集服務(wù)模塊100收到體檢廣播后中斷與汽車診斷設(shè)備的藍(lán)牙之間的連接,并向體檢服務(wù)模塊300發(fā)送中斷狀態(tài),體檢服務(wù)模塊300根據(jù)中斷狀態(tài)建立與所述藍(lán)牙之間的連接,進(jìn)行車輛體檢,并設(shè)置體檢標(biāo)志。本實施例中各個汽車應(yīng)用程序采用廣播通知的方式來實現(xiàn)進(jìn)程間通訊,協(xié)調(diào)藍(lán)牙設(shè)備的切換,使注冊了廣播接收器的用戶都能夠接收到廣播,擴(kuò)大了通信范圍。同時,數(shù)據(jù)采集服務(wù)模塊100在golo 1s升級過程中設(shè)置體檢標(biāo)志,可以讓用戶掌握體檢狀態(tài),避免體檢過程中藍(lán)牙通訊出現(xiàn)異常,影響了數(shù)據(jù)采集服務(wù)模塊100對車輛數(shù)據(jù)的實時采集。通過上述方式,本實施例可以協(xié)調(diào)車機(jī)多個應(yīng)用程序與golo 1s的藍(lán)牙之間的連接,保證了藍(lán)牙連接的快速有效切換,滿足了車機(jī)系統(tǒng)中各個功能的藍(lán)牙連接需求。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。