本發(fā)明涉及確定移動裝置中的當前可用應用程序的系統(tǒng)和方法。
背景技術:
很多車輛都包括車輛娛樂系統(tǒng)、導航系統(tǒng)、信息娛樂系統(tǒng)等。這些系統(tǒng)的一部分能夠與用戶(例如,車輛的駕駛員或乘客)攜帶的移動裝置進行交互。在有些情況下,車輛娛樂系統(tǒng)可與移動裝置通信,并允許用戶通過車輛娛樂系統(tǒng)控制移動裝置的某些特征。為了適當?shù)刂С謱σ苿友b置特征的這種控制,對車輛娛樂系統(tǒng)而言,重要的是了解移動裝置中可用的具體特征。
技術實現(xiàn)要素:
根據(jù)本發(fā)明的一方面,提供一種方法,包括:
車輛娛樂系統(tǒng)與接近車輛的移動裝置建立通信鏈路;
車輛娛樂系統(tǒng)從移動裝置接收移動裝置上的當前可用應用程序的識別;以及
車輛娛樂系統(tǒng)更新車內用戶界面,以將移動裝置上的當前可用應用程序顯示給車輛的至少一名乘客。
根據(jù)本發(fā)明的一個實施例,進一步包括車內用戶界面顯示當前通過車輛娛樂系統(tǒng)可用的基于車輛的應用程序。
根據(jù)本發(fā)明的一個實施例,其中利用投射技術從移動裝置接收當前可用應用程序的識別。
根據(jù)本發(fā)明的一個實施例,其中通信鏈路為無線通信鏈路。
根據(jù)本發(fā)明的一個實施例,其中當移動裝置處于距車輛預定距離時,車輛娛樂系統(tǒng)與移動裝置自動建立通信鏈路。
根據(jù)本發(fā)明的一個實施例,進一步包括車輛娛樂系統(tǒng)請求移動裝置準許向車輛的至少一名乘客顯示所有當前可用應用程序。
根據(jù)本發(fā)明的一個實施例,進一步包括車輛娛樂系統(tǒng)從移動裝置接收哪些當前可用應用程序能夠被顯示給車輛的至少一名乘客的識別。
根據(jù)本發(fā)明的一個實施例,進一步包括車輛娛樂系統(tǒng)周期性查詢移動裝置,以確定移動裝置上的當前可用應用程序的任何變化。
根據(jù)本發(fā)明的一個實施例,進一步包括車輛娛樂系統(tǒng)更新車內用戶界面,以顯示移動裝置上的更新的當前可用應用程序。
根據(jù)本發(fā)明的一個實施例,進一步包括車輛娛樂系統(tǒng)查詢移動裝置,以確定特定應用程序在移動裝置上當前是否可用。
根據(jù)本發(fā)明的另一方面,提供一種方法,包括:
車輛娛樂系統(tǒng)與接近車輛的移動裝置建立通信鏈路;
車輛娛樂系統(tǒng)查詢移動裝置,以確定特定應用程序在移動裝置上當前是否可用;
車輛娛樂系統(tǒng)利用投射技術從移動裝置接收特定應用程序在移動裝置上當前是否可用的識別;以及
響應于接收到特定應用程序在移動裝置上當前可用的識別,而由車輛娛樂系統(tǒng)更新車內用戶界面,以顯示特定應用程序,。
根據(jù)本發(fā)明的一個實施例,進一步包括車內用戶界面顯示當前通過車輛娛樂系統(tǒng)可用的基于車輛的應用程序。
根據(jù)本發(fā)明的一個實施例,進一步包括:
車輛娛樂系統(tǒng)查詢移動裝置,以確定第二應用程序在移動裝置上當前是否可用;
車輛娛樂系統(tǒng)從移動裝置接收第二應用程序在移動裝置上當前是否可用的識別;以及
響應于接收到第二應用程序在移動裝置上當前可用的識別,而由車輛娛樂系統(tǒng)更新車內用戶界面,以顯示第二應用程序。
根據(jù)本發(fā)明的一個實施例,進一步包括:
車輛娛樂系統(tǒng)以周期性間隔查詢移動裝置,以確定特定應用程序在移動裝置上是否仍然可用;
車輛娛樂系統(tǒng)從移動裝置接收特定應用程序在移動裝置上是否仍然可用的識別;以及
響應于接收到特定應用程序在移動裝置上當前不可用的識別,而由車輛娛樂系統(tǒng)更新車內用戶界面,以移除特定應用程序。
根據(jù)本發(fā)明的一個實施例,其中通信鏈路為無線通信鏈路。
根據(jù)本發(fā)明的一個實施例,其中當移動裝置處于距車輛預定距離時,車輛娛樂系統(tǒng)與移動裝置自動建立通信鏈路。
根據(jù)本發(fā)明的一個實施例,進一步包括車輛娛樂系統(tǒng)周期性查詢移動裝置,以識別移動裝置上的當前可用應用程序的任何變化。
根據(jù)本發(fā)明的一個實施例,進一步包括車輛娛樂系統(tǒng)更新車內用戶界面,以顯示移動裝置上的更新的當前可用應用程序。
根據(jù)本發(fā)明的另一方面,提供一種車輛,包括:
通信模塊,通信模塊配置成與接近車輛的移動裝置建立通信鏈路,通信模塊進一步配置成接收移動裝置上的當前可用應用程序的識別;
用戶界面管理器,用戶界面管理器配置成更新呈現(xiàn)在用戶界面中的可用應用程序信息和其他數(shù)據(jù);以及
顯示裝置,顯示裝置配置成將可用應用程序信息和其他數(shù)據(jù)顯示給車輛的至少一名乘客。
根據(jù)本發(fā)明的一個實施例,進一步包括移動裝置管理器,移動裝置管理器周期性查詢移動裝置,以確定移動裝置上的當前可用應用程序的任何變化。
附圖說明
參考如下附圖來描述本發(fā)明的非限制性、非窮舉的實施例,其中除非另有說明,否則相似的附圖標記在各附圖中始終指的是相似的部件。
圖1為示出能夠實現(xiàn)本文中所討論的系統(tǒng)和方法的示例環(huán)境的框圖;
圖2為示出娛樂系統(tǒng)的實施例的框圖;
圖3為示出車輛的駕駛員或乘客攜帶的移動裝置的實施例的框圖;
圖4為示出確定移動裝置上的當前可用應用程序和基于當前可用應用程序更新車輛娛樂系統(tǒng)用戶界面的方法的實施例的流程圖;
圖5為示出確定移動裝置上的當前可用應用程序是否已經(jīng)發(fā)生變化和根據(jù)需要更新車輛娛樂系統(tǒng)用戶界面的方法的實施例的流程圖。
具體實施方式
在如下描述中,參考構成其一部分且其中是以可實施本發(fā)明的具體示例性實施例的說明的方式顯示的附圖。對這些實施例做出了足夠詳細的描述,以使本領域的技術人員能夠實施本文中公開的構思,并且應該了解的是,在不脫離本發(fā)明的范圍的前提下,可對所公開的各種實施例做出修改以及可利用其他實施例。因此,如下詳細描述不應理解為限制性含義。
在整篇說明書中對“一個實施例”、“實施例”、“一個示例”或者“示例”的引用意指結合實施例或者示例所描述的特定特征、結構或者特性包含在本發(fā)明的至少一個實施例中。因而,短語“在一個實施例中”、“在實施例中”、“一個示例”或者“示例”在整篇說明書不同地方的出現(xiàn)未必都指的是相同的實施例或者示例。再者,特定特征、結構、數(shù)據(jù)庫或者特性在一個或以上實施例或示例中可組合成任意適合的組合和/或子組合。此外,應該領會的是,隨此提供的附圖目的是為了向本領域的普通技術人員做出說明,并且這些附圖未必是按比例繪制。
根據(jù)本發(fā)明的實施例可體現(xiàn)為設備、方法或者計算機程序產品。因此,本發(fā)明可采取以下形式:完全由硬件組成的實施例、完全由軟件組成的實施例(包括固件、常駐軟件、微代碼等)或者軟件形態(tài)與硬件形態(tài)結合的實施例,軟件形態(tài)與硬件形態(tài)在本文中可全部統(tǒng)稱為“電路”、“模塊”或“系統(tǒng)”。而且,本發(fā)明的實施例可采取體現(xiàn)在具有計算機可用程序代碼的任意有形表達介質中的計算機程序產品的形式,計算機可用程序代碼體現(xiàn)在介質中。
可利用一個或以上計算機可用介質或者計算機可讀介質的任意組合。例如,計算機可讀介質可包括便攜式計算機磁盤、硬盤、隨機存取存儲器(randomaccessmemory,ram)裝置、只讀存儲器(read-onlymemory,rom)裝置、可擦除可編程只讀存儲器(erasableprogrammableread-onlymemory,eprom或閃存)裝置、便攜式光盤只讀存儲器(compactdiscread-onlymemory,cdrom)、光學存儲裝置以及磁存儲裝置中的一個或多個。用于執(zhí)行本發(fā)明的操作的計算機程序代碼可編寫成一種或以上編程語言的任意組合。這種代碼是可從源代碼編譯成適合裝置或計算機的計算機可讀匯編語言或機器代碼,此代碼將在裝置或計算機上執(zhí)行。
實施例還可在云計算環(huán)境中實現(xiàn)。在本說明書和隨附的權利要求書中,可將“云計算”定義為能夠實現(xiàn)對可配置計算資源(例如,網(wǎng)絡、服務器、存儲器、應用程序以及服務)的共享池的隨處可用、方便、按需的網(wǎng)絡訪問的模型,該模型可通過虛擬化快速準備,并且以最小的管理精力或服務供應商的交互釋放,然后相應地調節(jié)。云模型可由不同特性(例如,按需自助服務、廣泛的網(wǎng)絡訪問、資源池化、快速彈性以及可度量的服務)、服務模式(例如,軟件即服務(softwareasaservice,“saas”)、平臺即服務(platformasaservice,“paas”)以及基礎設施即服務(infrastructureasaservice,“iaas”))以及部署模式(例如,私有云、社群云、公有云以及混合云)組成。
附圖中的流程圖和框圖舉例說明依據(jù)本發(fā)明不同實施例的系統(tǒng)、方法以及計算機程序產品的可能實施方式的架構、功能以及操作。在這點上,流程圖或框圖中的每個方框可代表包含實現(xiàn)指定邏輯功能的一個或以上可執(zhí)行指令的模塊、分段或者部分代碼。還要注意的是,框圖和/或流程圖的每個方框以及框圖和/或流程圖中的方框的組合是可通過執(zhí)行指定功能或動作的基于專用硬件的系統(tǒng)或者專用硬件與計算機指令的結合來實現(xiàn)。這些計算機程序指令也可存儲在計算機可讀介質中,該計算機可讀介質能夠指示計算機或其他可編程數(shù)據(jù)處理設備以特定方式運行,以使存儲在計算機可讀介質中的指令生產包括指令手段的產品,此指令手段實現(xiàn)流程圖和/或框圖的一個方框或多個方框中指定的功能/動作。
本文中討論的特定示例涉及確定移動裝置上的當前可用應用程序和基于當前可用應用程序更新車輛娛樂系統(tǒng)用戶界面。盡管特定示例涉及車輛娛樂系統(tǒng),但是所描述的系統(tǒng)和方法可應用于任何類型的車輛系統(tǒng),例如信息娛樂系統(tǒng)、導航系統(tǒng)、車輛控制系統(tǒng)等。此外,在一些實施例中,車輛娛樂系統(tǒng)與多個移動裝置進行交互,并且確定所有多個移動裝置上的當前可用應用程序。所有當前可用應用程序(遍及所有移動裝置)均顯示在車輛娛樂系統(tǒng)的用戶界面上。
如本文中所使用的,車輛包括轎車、卡車、客車、廂式貨車、摩托車、小型摩托車、自行車等。本文中討論的特定示例涉及藍牙無線通信系統(tǒng)的使用。然而,所描述的系統(tǒng)和方法可應用于使用任何通信協(xié)議的任何類型的無線通信系統(tǒng)或者消息傳送系統(tǒng)。
圖1為示出能夠實現(xiàn)本文中所討論的系統(tǒng)和方法的示例環(huán)境100的框圖。車輛102包括向車輛102的乘客提供各種娛樂、導航信息以及其他數(shù)據(jù)的娛樂系統(tǒng)104。盡管娛樂系統(tǒng)104是作為單個部件來舉例說明的,但是在替代實施例中,娛樂系統(tǒng)104可包括位于車輛102內部的多個單獨部件或者模塊。
娛樂系統(tǒng)104與用戶108所攜帶的移動裝置106通信。例如,用戶108可為將要駕駛或者乘坐在車輛102中的車輛102的所有者或者乘客。移動裝置106包括任何類型的計算裝置,例如智能手機、平板電腦、筆記本電腦、便攜式娛樂裝置等。當移動裝置106在娛樂系統(tǒng)104的通信范圍內時,移動裝置106能夠與娛樂系統(tǒng)104進行無線通信。在一些實施例中,移動裝置106為具藍牙功能的裝置,并且娛樂系統(tǒng)104支持藍牙通信。在特定實施方式中,移動裝置106為低功耗藍牙(bluetoothlowenergy,ble)裝置。
如本文中所討論的,娛樂系統(tǒng)104耦合至能夠向車輛102的駕駛員和/或乘客呈現(xiàn)信息的車輛用戶界面。在一些實施例中,娛樂系統(tǒng)104允許車輛102的駕駛員或乘客控制移動裝置106上當前可用的某些特征和/或應用程序。在其他實施例中,娛樂系統(tǒng)104控制向車輛102的駕駛員或乘客呈現(xiàn)其他視覺指示或聲音指示,例如車輛信息、導航信息等。
娛樂系統(tǒng)104可與數(shù)據(jù)通信網(wǎng)絡112(例如互聯(lián)網(wǎng)或其他網(wǎng)絡)進行周期性通信。例如,娛樂系統(tǒng)104可通過網(wǎng)絡112與服務器110進行通信。服務器110能夠訪問來自數(shù)據(jù)庫114的數(shù)據(jù),此數(shù)據(jù)包括用戶配置文件信息、移動裝置信息、藍牙地址信息、導航信息、車輛駕駛歷史以及其他數(shù)據(jù)。
在顯示于圖1中的示例實施例100中,移動裝置106被顯示為與一臺車輛102進行通信。在其他實施例中,如果不止一臺車輛102接近移動裝置106,則特定的移動裝置106可與多臺車輛102進行通信。
圖2為示出娛樂系統(tǒng)104的實施例的框圖。如圖2中所示,娛樂系統(tǒng)104包括通信模塊202、處理器204以及存儲器206。通信模塊202允許娛樂系統(tǒng)104與其他系統(tǒng)或部件(例如移動裝置106、網(wǎng)絡112、服務器110等)進行通信。此外,通信模塊202可通過例如控制器局域網(wǎng)(controllerareanetwork,can)總線之類的總線與車輛102中的其他系統(tǒng)或裝置進行通信。處理器204執(zhí)行各種指令來實現(xiàn)娛樂系統(tǒng)104所提供的功能。處理器204可包括用于執(zhí)行程序代碼或指令的任何類型的通用或專用處理器。存儲器206既存儲這些指令,又存儲包含在娛樂系統(tǒng)104中的處理器204和其他模塊所使用的其他數(shù)據(jù)。此外,存儲器206可存儲用戶特定信息,例如用戶配置文件信息、用戶通信參數(shù)、移動裝置設置等。
娛樂系統(tǒng)104還包括導航模塊208,導航模塊208執(zhí)行將車輛102引導向期望目的地的各種導航路線規(guī)劃操作。各種技術可用于為車輛102規(guī)劃到其目的地的路線。導航模塊208可包括全球定位系統(tǒng)(globalpositioningsystem,gps),以識別車輛的當前地理位置。
移動裝置管理器210管理與一個或以上移動裝置的通信。例如,移動裝置管理器210能夠從移動裝置請求和/或接收與移動裝置上的當前可用應用程序有關的信息。由于用戶可從移動裝置上刪除應用程序,因此同一移動裝置在不同時間會具有不同的可用應用程序。此外,有些應用程序只能在特定地理區(qū)域或者在特殊情況下運行。移動裝置管理器210與一個或以上移動裝置進行周期性通信,以確定每一個移動裝置上的當前可用應用程序。
可用應用程序管理器212從移動裝置管理器210接收關于當前可用應用程序的信息,并且維護關于一個或以上移動裝置上的當前可用應用程序的數(shù)據(jù)??捎脩贸绦蚬芾砥?12與用戶界面管理器214進行通信,以確定待顯示在車輛中的顯示裝置216上的具體特征、應用程序以及其他信息上。例如,如果移動裝置上的導航應用程序當前是可用的,則移動裝置將向移動裝置管理器210指示該應用程序的可用性,移動裝置管理器210將可用性信息傳送到可用應用程序管理器212。用戶界面管理器214確定如何在顯示裝置216上顯示導航應用程序(及其特征),以使用戶(例如,車輛駕駛員或者乘客)能夠通過娛樂系統(tǒng)104控制移動裝置的導航應用程序(及其特征)。除了顯示導航應用程序(及其特征)之外,顯示裝置還可顯示其他車輛數(shù)據(jù)、特征以及應用程序,例如娛樂特征、車輛設置、導航特征、氣候控制設置等。
圖3為示出車輛的駕駛員或乘客攜帶的移動裝置106的實施例的框圖。如圖3中所示,移動裝置106包括通信模塊302、處理器304以及存儲器306。通信模塊302允許移動裝置106與其他系統(tǒng)或部件(例如娛樂系統(tǒng)104或其他車輛系統(tǒng))進行通信。處理器304執(zhí)行各種指令來實現(xiàn)移動裝置106所提供的功能。處理器304可包括用于執(zhí)行程序代碼或指令的任何類型的通用或專用處理器。存儲器306既存儲這些指令,又存儲包含在移動裝置106中的處理器304和其他模塊所使用的其他數(shù)據(jù)。此外,存儲器306可存儲其他信息,例如通信參數(shù)等。
移動裝置106還包括應用程序更新管理器308,應用程序更新管理器308與一個或以上娛樂系統(tǒng)104進行周期性通信,以發(fā)送關于移動裝置上的當前可用應用程序的信息。車輛接近確定模塊310感測何時移動裝置106在車輛的預定距離內。在一些實施例中,當?shù)竭_預定距離時,數(shù)據(jù)投射管理器312將關于移動裝置106上的當前可用應用程序的信息(例如,通過通信模塊302)傳送到車輛(例如,車輛的娛樂系統(tǒng)104)。在特定實施方式中,利用投射技術(projectiontechnology)(例如applecarplay或者androidauto)來將關于移動裝置106上的當前可用應用程序的信息傳送到車輛。例如,如果用戶從移動裝置106禁用(或刪除)地圖應用程序,則利用支持的投射技術將此更新從移動裝置106發(fā)送到娛樂系統(tǒng)104。
圖4為示出確定移動裝置上的當前可用應用程序和基于當前可用應用程序更新車輛娛樂系統(tǒng)用戶界面的方法400的實施例的流程圖。首先,在402,移動裝置檢測移動裝置的預定范圍內的車輛。例如,預定范圍可以是車輛的0-25英尺內。然后,在404,移動裝置確定移動裝置上的當前可用應用程序。當前可用應用程序包括例如安裝在移動裝置上且在移動裝置上為啟用(即,未從移動裝置上刪除或者停用/禁用)的應用程序。在406,移動裝置建立與車輛的通信鏈路。然后,在408,移動裝置將(移動裝置上的)當前可用應用程序的識別傳送到車輛。如本文中所討論的,可利用投射技術(例如applecarplay或者androidauto)將當前可用應用程序的識別傳送到車輛??墒褂酶鞣N類型的消息格式來將關于當前可用應用程序的數(shù)據(jù)傳送到車輛。在一些實施例中,消息格式為屬性列表、文本文件或者呼應查詢。例如,使用呼應查詢,車輛娛樂系統(tǒng)就特定應用程序(例如導航應用程序)查詢移動裝置。如果特定應用程序在移動裝置上當前是可用的,則移動裝置對查詢作出“1”的響應。否則,移動裝置對查詢作出“0”的響應,即表明特定應用程序在移動裝置上當前是不可用的。
在410,車輛接收關于移動裝置上的當前可用應用程序的信息。在412,車輛的娛樂系統(tǒng)(或者任何其他車輛系統(tǒng))更新其用戶界面,以將當前可用應用程序顯示給車輛乘客。然后,在414,方法400周期性確定當前可用應用程序是否發(fā)生任何變化。在一些實施例中,車輛娛樂系統(tǒng)可周期性查詢移動裝置,以查看可用應用程序從最后更新以來是否發(fā)生任何變化。在其他實施例中,每當移動裝置上的可用應用程序出現(xiàn)變化(例如,每當添加/激活或者移除/停用新的應用程序),移動裝置便會自動通知車輛娛樂系統(tǒng)。如果可用應用程序沒有變化,則在再次檢查之前此方法等待特定時間周期。如果可用應用程序發(fā)生變化,則在416移動裝置將更新的應用程序信息傳送到車輛。然后,在418,車輛娛樂系統(tǒng)基于更新的應用程序信息更新其用戶界面。
圖5為示出確定移動裝置上的當前可用應用程序是否已經(jīng)發(fā)生變化和根據(jù)需要更新車輛娛樂系統(tǒng)用戶界面的方法500的實施例的流程圖。首先,在502,車輛娛樂系統(tǒng)就特定應用程序在移動裝置上當前是否可用而查詢移動裝置。在504,移動裝置接收查詢并確定特定應用程序當前是否可用。如果在506特定應用程序當前是可用的,則在508移動裝置通知車輛娛樂系統(tǒng)特定應用程序當前是可用的。然而,如果在506特定應用程序當前是不可用的,則在510移動裝置通知車輛娛樂系統(tǒng)特定應用程序當前是不可用的。如果必要的話,該方法在512繼續(xù),車輛娛樂系統(tǒng)會基于更新的應用程序信息更新其用戶界面。例如,如果特定應用程序先前是可用的,但是現(xiàn)在此應用程序是不可用的,則車輛娛樂系統(tǒng)更新其用戶界面,以表明此應用程序不再是可用的。
在一些實施例中,對于在移動裝置上可能是可用的每一個可能應用程序,重復方法500。
盡管依據(jù)某些優(yōu)選實施例描述了本發(fā)明,但是考慮到本發(fā)明的益處,其他實施例對于本領域的普通技術人員將是顯而易見的,本發(fā)明包括沒有提供本文中所闡述的所有利益和特征的實施例,它們也在本發(fā)明的范圍內。應該理解的是,在不脫離本發(fā)明的范圍的前提下,可以利用其他實施例。