一種外接設備聚合裝置和方法
【專利摘要】本發明提供一種外接設備聚合裝置和方法。所述裝置包括:外設解析模塊,用于在檢測到外接設備接入后,根據所述外接設備的特征查找其對應的解析規則,根據所述解析規則將所述外接設備發送的原始數據轉換為可操控應用層軟件的標準數據;映射管理模塊,用于建立并保存所述外接設備和正在運行的應用層軟件的映射關系;軟件代理模塊,用于在接入的外接設備的數量為N,且N個外接設備都對應前臺正在運行的應用層軟件時,根據用戶配置的外接設備與虛擬設備的對應關系,將所述N個外接設備發送的原始數據轉換后的標準數據作為至少一個虛擬設備發出的原始數據通過預設的API接口發送給所述前臺正在運行的應用層軟件,其中,N為大于等于1的自然數。
【專利說明】一種外接設備聚合裝置和方法
【技術領域】
[0001]本發明涉及計算機領域,尤其涉及一種外接設備聚合裝置和方法。
【背景技術】
[0002]隨著科技的發展,智能終端的種類越來越豐富,比如:智能電視、智能機頂盒等等,都已成為了近年來用戶熱捧的智能產品。智能終端上可以裝載各式各樣的APP(Applicat1n,應用軟件)以供用戶使用。
[0003]為了進一步給用戶帶來更好的APP使用體驗,大多數智能終端都支持外接設備的接入。比如:遙控器、體感輸入設備等等。然而,對于大多數APP而言,并不支持多個外接設備的同時操控。比如:對于同一款游戲APP,用戶可以選擇使用游戲手柄來操控游戲角色;也可以選擇使用手機,在建立連接后操控游戲角色,但是不能同時使用游戲手柄和手機。對于較復雜的大型游戲,例如:武裝直升機,使用單一的外接設備難以滿足用戶對游戲的操控需求。
【發明內容】
[0004]有鑒于此,本發明提供一種外接設備聚合裝置和方法。
[0005]具體地,本發明是通過如下技術方案實現的:
[0006]一種外接設備聚合裝置,應用在智能終端上,所述裝置包括:
[0007]外設解析模塊,用于在檢測到外接設備接入后,根據所述外接設備的特征查找其對應的解析規則,根據所述解析規則將所述外接設備發送的原始數據轉換為可操控應用層軟件的標準數據;
[0008]映射管理模塊,用于建立并保存所述外接設備和正在運行的應用層軟件的映射關系;
[0009]軟件代理模塊,用于在接入的外接設備的數量為N,且N個外接設備都對應前臺正在運行的應用層軟件時,根據用戶配置的外接設備與虛擬設備的對應關系,將所述N個外接設備發送的原始數據轉換后的標準數據作為至少一個虛擬設備發出的原始數據通過預設的API接口發送給所述前臺正在運行的應用層軟件,其中,N為大于等于I的自然數。
[0010]進一步地,所述軟件代理模塊,進一步用于從所述API接口接收應用層軟件向所述虛擬設備下發的控制數據,并根據所述對應關系查找所述虛擬設備對應的外接設備;
[0011]所述外設解析模塊,進一步用于根據所述外接設備對應的解析規則將所述控制數據轉換為原始數據,并發送給所述外接設備。
[0012]進一步地,所述外設解析模塊,進一步用于在所述虛擬設備對應有多個外接設備時,根據所述多個外接設備對應的解析規則將所述控制數據分別轉換為對應的原始數據,并發送給對應的外接設備。
[0013]進一步地,所述映射管理模塊,具體用于接收應用層軟件在運行后發送的注冊請求,保存所述應用層軟件的注冊信息,所述注冊信息包括應用層軟件對外接設備的需求,并在當前接入的外接設備滿足所述應用層軟件對外接設備的部分需求時,根據用戶的指令建立并保存所述外接設備和所述應用層軟件的映射關系。
[0014]進一步地,所述外接設備是游戲外設,所述應用層軟件是應用層游戲。
[0015]一種外接設備聚合方法,應用在智能終端上,所述方法包括:
[0016]在檢測到外接設備接入后,根據所述外接設備的特征查找其對應的解析規則,根據所述解析規則將所述外接設備發送的原始數據轉換為可操控應用層軟件的標準數據;
[0017]建立并保存所述外接設備和正在運行的應用層軟件的映射關系;
[0018]在接入的外接設備的數量為N,且N個外接設備都對應前臺正在運行的應用層軟件時,根據用于配置的外接設備與虛擬設備的對應關系,將所述N個外接設備發送的原始數據轉換后的標準數據作為至少一個虛擬設備發出的原始數據通過預設的API接口發送給所述前臺正在運行的應用層軟件,其中,N為大于等于I的自然數。
[0019]進一步地,從所述API接口接收應用層軟件向所述虛擬設備下發的控制數據,并根據所述對應關系查找所述虛擬設備對應的外接設備;
[0020]根據所述外接設備對應的解析規則將所述控制數據轉換為原始數據,并發送給所述外接設備。
[0021]進一步地,在所述虛擬設備對應有多個外接設備時,根據所述多個外接設備對應的解析規則將所述控制數據分別轉換為對應的原始數據,并發送給對應的外接設備。
[0022]進一步地,所述建立并保存所述外接設備和正在運行的應用層軟件的映射關系包括:
[0023]接收應用層軟件在運行后發送的注冊請求,保存所述應用層軟件的注冊信息,所述注冊信息包括應用層軟件對外接設備的需求,并在當前接入的外接設備滿足所述應用層軟件對外接設備的部分需求時,根據用戶的指令建立并保存所述外接設備和所述應用層軟件的映射關系。
[0024]進一步地,所述外接設備是游戲外設,所述應用層軟件是應用層游戲。
[0025]由以上描述可以看出,本發明通過預先保存各個外接設備的解析規則,在接收到外接設備發送的原始數據時,根據其解析規則將原始數據轉換為可操控應用層軟件的標準數據,并根據用戶的配置將多個外接設備映射為至少一個虛擬設備,從而實現多個外接設備操控同一個應用層軟件,提升用戶體驗。
【專利附圖】
【附圖說明】
[0026]圖1是本發明一種實施方式中外接設備聚合裝置的邏輯結構示意圖;
[0027]圖2是本發明一種實施方式中外接設備聚合方法的流程示意圖;
[0028]圖3是本發明一種實施方式中應用層軟件向外接設備下發控制需求的流程示意圖。
【具體實施方式】
[0029]有鑒于此,本發明提供一種外接設備聚合的裝置和方法,應用在智能終端上。所述智能終端包括有可以裝載各種APP的智能機頂盒、智能電視、智能手機等等。作為本發明裝置的運行載體,所述智能終端通常至少包括有:CPU、內存以及非易失性存儲器,當然還可能包括有各種I/o接口等硬件。請參考圖1和圖2,所述裝置包括有:外設解析模塊、映射管理模塊以及軟件代理模塊。在一個示例性的實施方案中,該裝置在運行過程中執行如下處理步驟:
[0030]步驟201,外設解析模塊在檢測到外接設備接入后,根據所述外接設備的特征查找其對應的解析規則,根據所述解析規則將所述外接設備發送的原始數據轉換為可操控應用層軟件的標準數據。
[0031]步驟202,映射管理模塊建立并保存所述外接設備和正在運行的應用層軟件的映身寸關系。
[0032]步驟203,軟件代理模塊在接入的外接設備的數量為N,且N個外接設備都對應前臺正在運行的應用層軟件時,根據用戶配置的外接設備與虛擬設備的對應關系,將所述N個外接設備發送的原始數據轉換后的標準數據作為至少一個虛擬設備發出的原始數據通過預設的API接口發送給所述前臺正在運行的應用層軟件,其中,N為大于等于I的自然數。
[0033]目前,APP開發商在開發應用層軟件的時候通常會使用API(Applicat1nProgramming Interface,應用程序編程接口)建立監聽事件的監聽器。外接設備在連接到智能終端之后,通常會將對應當前用戶操作的外接設備狀態通過一長串二進制數發送給智能終端,智能終端按照系統默認的解析規則解析該二進制數代表的語義,API在接收到該二進制數后APP會執行該語義對應的響應動作。
[0034]為了使智能終端能夠支持多個外接設備的同時操控,本發明設計整合市場上各種外接設備的解析規則,然后根據所述解析規則將外接設備發送的原始數據轉換為應用層軟件可以識別的標準數據,同時建立真實的外接設備和虛擬設備的映射關系,將多個外接設備映射為應用層軟件需要的至少一個虛擬設備,并將多個外接設備發送的原始數據轉換后的標準數據作為虛擬設備發送的原始數據通過預設的API接口發送給應用層軟件,以此來實現多個外接設備的聚合功能。
[0035]具體地,為實現本發明目的,需要開發人員匯總市場上各種類型的外接設備以及其對應的解析規則。通常來講,開發人員可以通過外接設備的特征來標識所述外接設備。所述外接設備的特征包括有:外接設備的型號(PID)、外接設備的廠商名(VID)、外接設備名稱、外接設備傳輸的數據特征等等。對于USB外接設備而言,通常使用外接設備的型號和廠商名來對應解析規則。而對于藍牙外接設備而言,通常使用外接設備名稱和外接設備傳輸的數據特征來對應解析規則。所述解析規則用于將外接設備發送的原始數據轉換為其對應的可操控應用層軟件的標準數據。
[0036]以所述外接設備是游戲外設,比如:游戲手柄和智能手機,應用層軟件是游戲,智能終端是智能電視為例,結合具體的實施例來描述本發明。
[0037]游戲手柄、智能手機與智能電視有多種連接方式,比如:USB連接、藍牙連接、WiFi連接等等。在智能電視檢測到游戲手柄接入之后,智能電視的外設解析模塊可以根據具體的連接方式從游戲手柄以及智能手機發送的原始數據中獲取其各自對應的特征。然后根據所述特征查找對應的解析規則。這樣,當所述外設解析模塊接收到游戲手柄和智能手機發送的原始數據時,就可以根據所述解析規則解析出所述原始數據對應的標準數據。當然,本領域技術人員也可以采用其他的外接設備特征來對應其解析規則,本發明對此不作限制。
[0038]所述映射管理模塊管理外接設備和應用層軟件的對應關系。具體地,當應用層軟件運行后,會發送注冊請求給所述映射管理模塊,以供所述映射管理模塊保存所述應用層軟件的注冊信息。所述注冊信息包括應用層軟件對外接設備的需求。這是因為,對于安卓等操作系統而言,在后臺可以同時運行多個應用層軟件,所述映射管理模塊保存有當前運行的各個應用層軟件以及其對外接設備的需求,以便于區分。以所述應用層軟件為游戲,所述外接設備為游戲手柄為例,所述游戲對游戲手柄的需求通常可以理解為游戲對游戲手柄所能夠提供的語義的需求。比如:某游戲需要其游戲手柄至少包括有ABXY四個按鍵。所述映射管理模塊根據當前接入的游戲手柄的解析規則判斷該游戲手柄是否滿足游戲的需求,在當前接入的游戲手柄滿足所述游戲的對外接設備的需要時,建立并保存該游戲手柄和該游戲的映射關系。
[0039]進一步地,對于一些較為復雜的游戲而言,一個外接設備可能無法滿足應用層軟件的所有需求。在本發明中當外接設備滿足所述應用層軟件對外接設備的部分需求時,可以根據用戶的設置將組合起來滿足該應用層軟件需求的多個外接設備共同映射到該應用層軟件。比如:映射管理模塊將游戲手柄和智能手機都映射到一個游戲。
[0040]同時,所述外設解析模塊保存用戶設置的外接設備與虛擬設備的對應關系。比如:根據用戶的配置該軟件代理模塊保存所述游戲手柄和智能手機映與同一個虛擬設備的對應關系,當用戶使用該游戲手柄或者智能手機時,由所述軟件代理模塊將該游戲手柄以及智能手機發送的原始數據經轉換后的標準數據作為上述虛擬設備發送的數據通過其API接口發送給游戲。對于應用層游戲而言,其感知到的是所述軟件代理模塊映射出來的所述虛擬設備。又比如:如果當前接入兩個游戲手柄和兩部智能手機,游戲手柄I和智能手機I與虛擬設備I對應,游戲手柄2和智能手機2與虛擬設備2對應,其中,所述虛擬設備I用于控制游戲角色A,所述虛擬設備2用于控制游戲角色B。當某用戶使用游戲手柄I和智能手機I時,所述軟件代理模塊將該游戲手柄I和智能手機I發送的原始數據經換換后的標準數據作為虛擬設備I發送的數據發送給游戲,以控制游戲角色I。同樣,當另一用戶使用游戲手柄2和智能手機2時,所述軟件代理模塊將該游戲手柄2和智能手機2發送的原始數據經轉換后的標準數據作為虛擬設備2發送的數據發送給游戲,以控制游戲角色2。
[0041]舉例來說,用戶打開智能電視中的應用游戲“武裝直升機”,“武裝直升機”的注冊信息保存下來。比如:所述注冊信息是:“武裝直升機”對外接設備的需求至少包括ABXY四個按鍵以及重力傳感器。用戶將游戲手柄和智能手機通過藍牙連接到所述智能電視上。智能電視的所述外設解析模塊通過設備名稱等特征查找游戲手柄和智能手機各自對應的解析規則分別為解析規則A和解析規則B。用戶配置使用所述游戲手柄和所述智能手機來操控“武裝直升機”,所述映射管理模塊發現該游戲手柄和智能手機組合起來可以滿足所述設備需求,比如:游戲手柄可以提供ABXY四個按鍵,智能手機可以提供重力傳感器,所述映射管理模塊進而將游戲手柄和智能手機映射到“武裝直升機”。所述軟件代理模塊根據用戶的配置保存所述游戲手柄和智能手機與可以控制“武裝直升機”游戲中的飛行員的虛擬設備的對應關系。
[0042]如果所述外設解析模塊根據用戶的操作指令將所述游戲手柄發出的原始數據轉換為語義為“A鍵按下”的標準數據(比如:預設的字符串/數值),然后由軟件代理模塊將所述語義為“A鍵按下”的標準數據后作為所述虛擬設備發出的數據發送給“武裝直升機”,比如:A鍵按下對應“武裝直升機”中飛機射擊的動作。同樣,如果所述外設解析模塊根據用戶的操作指令將所述智能手機發出的原始數據轉換為語義為“重心向下”的標準數據,所述軟件代理模塊將所述語義為“重心向下”的標準數據作為所述虛擬設備發出的數據發送給“武裝直升機”,比如:重心向下對應“武裝直升機”中飛機下降的動作。這樣,用戶就可以使用游戲手柄和智能手機組合來操控游戲,比如:將智能手機卡在游戲手柄上,在按住游戲手柄A鍵的同時向左下方傾斜游戲手柄,就可以控制游戲中的飛機在射擊的同時向左下方傾斜側飛。
[0043]請參考圖3,本發明同樣支持應用層軟件向外接設備下發控制需求。所述下發控制需求的過程包括有:
[0044]步驟301,軟件代理模塊從所述API接口接收應用層軟件向虛擬設備下發的控制數據,并根據所述對應關系查找所述虛擬設備對應的外接設備。
[0045]步驟302,外設解析模塊根據所述外接設備對應的解析規則將所述控制數據轉換為原始數據,并發送給所述外接設備。
[0046]進一步地,所述外接解析模塊在所述虛擬設備對應有多個外接設備時,根據所述多個外接設備對應的解析規則將所述控制數據分別轉換為對應的原始數據,并發送給對應的外接設備。
[0047]舉例來說,應用層游戲“武裝直升機”中游戲角色勝出,“武裝直升機”會通過API接口下發針對虛擬設備的意為“震動”的控制數據。所述軟件代理模塊經查看發現該虛擬設備對應到游戲手柄和智能手機。所述外設解析模塊經查找發現游戲手柄對應的解析規則是A,智能手機對應的解析規則是B。所述外設解析模塊就可以根據所述解析規則A和解析規則B,將所述意為“震動”的控制數據轉換為游戲手柄和智能手機可識別的原始數據,比如:16位全I的二進制數。游戲手柄和智能手機進而根據接收到的原始數據進行震動。需要說明的是,對于應用層軟件下發外接設備控制需求,需要當前連接的外接設備能夠支持該控制需求。如果外接設備不支持所述控制需求,比如,游戲手柄不支持震動的功能,那么所述外設解析模塊根據解析規則A也無法將意為“震動”的控制數據轉換為游戲手柄A可識別的原始數據,所述外設解析模塊會直接丟棄或者忽略應用層游戲下發的控制數據。
[0048]由以上描述可以看出,本發明通過預先保存各個外接設備的解析規則,在接收到外接設備發送的原始數據時,根據其解析規則將原始數據轉換為可操控應用層軟件的標準數據,并根據用戶的配置將多個外接設備映射為至少一個虛擬設備,從而實現多個外接設備操控同一個應用層軟件,提升用戶體驗。
[0049]以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的范圍之內。
【權利要求】
1.一種外接設備聚合裝置,應用在智能終端上,其特征在于,所述裝置包括: 外設解析模塊,用于在檢測到外接設備接入后,根據所述外接設備的特征查找其對應的解析規則,根據所述解析規則將所述外接設備發送的原始數據轉換為可操控應用層軟件的標準數據; 映射管理模塊,用于建立并保存所述外接設備和正在運行的應用層軟件的映射關系; 軟件代理模塊,用于在接入的外接設備的數量為N,且N個外接設備都對應前臺正在運行的應用層軟件時,根據用戶配置的外接設備與虛擬設備的對應關系,將所述N個外接設備發送的原始數據轉換后的標準數據作為至少一個虛擬設備發出的原始數據通過預設的API接口發送給所述前臺正在運行的應用層軟件,其中,N為大于等于I的自然數。
2.根據權利要求1所述的裝置,其特征在于, 所述軟件代理模塊,進一步用于從所述API接口接收應用層軟件向所述虛擬設備下發的控制數據,并根據所述對應關系查找所述虛擬設備對應的外接設備; 所述外設解析模塊,進一步用于根據所述外接設備對應的解析規則將所述控制數據轉換為原始數據,并發送給所述外接設備。
3.根據權利要求2所述的裝置,其特征在于, 所述外設解析模塊,進一步用于在所述虛擬設備對應有多個外接設備時,根據所述多個外接設備對應的解析規則將所述控制數據分別轉換為對應的原始數據,并發送給對應的外接設備。
4.根據權利要求1所述的裝置,其特征在于, 所述映射管理模塊,具體用于接收應用層軟件在運行后發送的注冊請求,保存所述應用層軟件的注冊信息,所述注冊信息包括應用層軟件對外接設備的需求,并在當前接入的外接設備滿足所述應用層軟件對外接設備的部分需求時,根據用戶的指令建立并保存所述外接設備和所述應用層軟件的映射關系。
5.根據權利要求1所述的裝置,其特征在于, 所述外接設備是游戲外設,所述應用層軟件是應用層游戲。
6.一種外接設備聚合方法,應用在智能終端上,其特征在于,所述方法包括: 在檢測到外接設備接入后,根據所述外接設備的特征查找其對應的解析規則,根據所述解析規則將所述外接設備發送的原始數據轉換為可操控應用層軟件的標準數據; 建立并保存所述外接設備和正在運行的應用層軟件的映射關系; 在接入的外接設備的數量為N,且N個外接設備都對應前臺正在運行的應用層軟件時,根據用于配置的外接設備與虛擬設備的對應關系,將所述N個外接設備發送的原始數據轉換后的標準數據作為至少一個虛擬設備發出的原始數據通過預設的API接口發送給所述前臺正在運行的應用層軟件,其中,N為大于等于I的自然數。
7.根據權利要求6所述的方法,其特征在于,所述方法還包括: 從所述API接口接收應用層軟件向所述虛擬設備下發的控制數據,并根據所述對應關系查找所述虛擬設備對應的外接設備; 根據所述外接設備對應的解析規則將所述控制數據轉換為原始數據,并發送給所述外接設備。
8.根據權利要求7所述的方法,其特征在于,所述方法還包括: 在所述虛擬設備對應有多個外接設備時,根據所述多個外接設備對應的解析規則將所述控制數據分別轉換為對應的原始數據,并發送給對應的外接設備。
9.根據權利要求6所述的方法,其特征在于, 所述建立并保存所述外接設備和正在運行的應用層軟件的映射關系包括: 接收應用層軟件在運行后發送的注冊請求,保存所述應用層軟件的注冊信息,所述注冊信息包括應用層軟件對外接設備的需求,并在當前接入的外接設備滿足所述應用層軟件對外接設備的部分需求時,根據用戶的指令建立并保存所述外接設備和所述應用層軟件的映射關系。
10.根據權利要求6所述的方法,其特征在于, 所述外接設備是游戲外設,所述應用層軟件是應用層游戲。
【文檔編號】H04L29/06GK104243479SQ201410484414
【公開日】2014年12月24日 申請日期:2014年9月19日 優先權日:2014年9月19日
【發明者】許磊 申請人:許磊