專利名稱:基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式軟件的應(yīng)用技術(shù),具體的說,是涉及一種基于智能電視終端和手持設(shè)備實現(xiàn)虛擬外設(shè)的方法。
背景技術(shù):
隨著智能電視終端的出現(xiàn),豐富的應(yīng)用已經(jīng)能夠在電視上下載并運行。但從用戶體驗的角度看來,傳統(tǒng)遙控器功能已經(jīng)不能滿足操控的需要。在不增加專業(yè)交互設(shè)備的情況下,如何充分利用身邊的智能手持設(shè)備并獲得較好體驗,成為一項研究重點,于是以電視為中心對周圍包含觸摸屏、重力感應(yīng)器、陀螺儀、話筒、攝像頭等功能的智能手持設(shè)備的外設(shè)進行整合,延伸電視功能,提升設(shè)備使用體驗的想法應(yīng)用而生,即以電視為中心對其它周邊智能設(shè)備的已有外設(shè)功能進行復(fù)用(稱為虛擬外設(shè)技術(shù));然而目前還沒有一種有效的基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提出一種基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,解決目前智能電視終端的外設(shè)不能滿足操控需要的問題。本發(fā)明解決上述技術(shù)問題所采用的方案是基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,所述智能電視終端中設(shè)有虛擬外設(shè)監(jiān)聽程序,所述手持設(shè)備中設(shè)有虛擬外設(shè)客戶端程序,該方法包括以下步驟a.智能電視終端啟動虛擬外設(shè)監(jiān)聽程序,監(jiān)聽虛擬外設(shè)的狀態(tài);b.手持設(shè)備啟動虛擬外設(shè)客戶端程序,搜索網(wǎng)絡(luò)環(huán)境內(nèi)的智能電視終端;c.在手持設(shè)備上根據(jù)搜索的結(jié)果,選擇需要連接的智能電視終端;d.智能電視終端向手持設(shè)備查詢可以使用的具體服務(wù);e.手持設(shè)備向智能電視終端注冊可以提供的服務(wù)類型;f.手持設(shè)備捕獲虛擬外設(shè)事件,并將虛擬外設(shè)事件按照指定格式發(fā)送至智能電視終端;g.智能電視終端接收虛擬外設(shè)事件,并將其轉(zhuǎn)換為可識別的系統(tǒng)標準事件,寫入相應(yīng)驅(qū)動文件;h.當(dāng)智能電視終端對事件處理完成后,斷開與手持設(shè)備的連接。進一步,在步驟a之前還包括步驟a0.選擇以太網(wǎng)通信端口號,定義智能電視終端與手持設(shè)備之間的數(shù)據(jù)傳輸格式。具體的,采用XML定義數(shù)據(jù)傳輸格式,分為設(shè)備描述文件、服務(wù)描述文件、服務(wù)描述文件、事件描述文件。進一步,所述智能電視終端中的虛擬外設(shè)監(jiān)聽程序以Android Service的方式運行,對指定的端口進行事件監(jiān)控,通過IBinder接口與智能電視終端的其它組件通信。進一步,步驟h中,所述智能電視終端斷開與手持設(shè)備連接的方式為智能電視終端的虛擬外設(shè)監(jiān)聽程序與手持設(shè)備的虛擬外設(shè)客戶端程序發(fā)送斷開通知從而斷開連接或者直接斷開連接。本發(fā)明的有益效果是對手持設(shè)備的功能進行復(fù)用,從而實現(xiàn)虛擬外設(shè),滿足對智能電視多應(yīng)用的操控需求,增強用戶的體驗。
圖I為本發(fā)明中的智能電視終端與手持設(shè)備對事件的處理流程。
具體實施例方式本發(fā)明公開了一種基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,解決目前智能電視終端的外設(shè)不能滿足操控需要的問題。實現(xiàn)虛擬外設(shè)需要智能電視終端與手持設(shè)備的雙向交互,而交互又是基于對事 件的處理,參見圖1,從手持設(shè)備客戶端來看,其處理流程為首先,手持設(shè)備客戶端程序運行;然后搜索電視終端設(shè)備,在搜索到電視終端設(shè)備后,選擇需要連接的電視終端設(shè)備,即進入與電視終端設(shè)備的交互(捕獲虛擬外設(shè)事件,按照指定格式發(fā)送至電視終端設(shè)備),在雙方完成交互,對事件處理完成后斷開設(shè)備連接;從電視終端來看,其處理流程為首先,電視終端的監(jiān)聽程序運行,監(jiān)聽外設(shè)狀態(tài),當(dāng)建立與某個手持設(shè)備的連接后,從該手持設(shè)備處獲取虛擬外設(shè)事件,然后將虛擬外設(shè)事件轉(zhuǎn)化為可識別的系統(tǒng)標準事件,寫入相應(yīng)驅(qū)動程序,最后事件交由上層交互框架進行處理,在完成交互,對事件處理完成后斷開設(shè)備連接。下面以實施例對本發(fā)明的方案作進一步的描述。本例中的實施平臺基于Android系統(tǒng),其具體步驟如下I)選擇以太網(wǎng)通信端口號。為電視終端監(jiān)控程序與手持設(shè)備客戶端程序選擇一個端口號,范圍1024 65536。2)啟動電視終端虛擬外設(shè)監(jiān)控程序。監(jiān)控程序以Android Service的方式運行,對指定的端口進行事件監(jiān)控,通過IBinder接口與系統(tǒng)其它組件通信。3)定義信息交互的數(shù)據(jù)傳輸格式。使用XML定義傳輸數(shù)據(jù)格式,分為設(shè)備描述文件、服務(wù)描述文件、事件描述文件。設(shè)備描述文件格式〈device〉〈name〉設(shè)備名字〈/name〉<id> 設(shè)備 id 號 </id><servicelsit>〈service〉提供服務(wù)〈/service)</servicelsit>〈/device〉服務(wù)描述文件格式〈service〉〈type〉服務(wù)類型觸摸屏、重力感應(yīng)器、陀螺儀〈/type〉<id>服務(wù)類型編號0,I……</id>
</service)事件描述文件<eventlist><event>〈name〉事件名稱連接、發(fā)送〈/name〉<id> 事件編號0, I......</id>〈/event〉</eventlist>4)啟動手持設(shè)備虛擬外設(shè)客戶端應(yīng)用程序,自動搜索同一網(wǎng)段內(nèi)的電視終端設(shè)備??蛻舳顺绦蛳蚓钟蚓W(wǎng)內(nèi)的所有其他設(shè)備發(fā)送指定格式的廣播消息,根據(jù)監(jiān)聽端口的反饋結(jié)果,發(fā)現(xiàn)可以連接的電視終端。5)連接電視終端設(shè)備。手持設(shè)備客戶端程序根據(jù)需要,選擇要連接的電視終端設(shè)備。6)虛擬外設(shè)客戶端與電視終端進行信息交互。電視終端首先向手持設(shè)備查詢可以使用的具體服務(wù),如觸摸屏、重力感應(yīng)器、陀螺儀、話筒、攝像頭等;手持設(shè)備向電視終端確認注冊可以提供的服務(wù)類型;其次,虛擬外設(shè)客戶端通過標準設(shè)備API捕獲外設(shè)事件,將數(shù)據(jù)按照指定格式封裝,傳遞到電視終端。接著,電視終端接收數(shù)據(jù),按照規(guī)定的格式與服務(wù)類型進行解析,將虛擬事件轉(zhuǎn)換為可以識別的系統(tǒng)標準事件,寫入相應(yīng)驅(qū)動文件,最后事件交由上層交互框架處理。7)斷開客戶端與電視終端的連接。通過TCP單播模式,電視終端監(jiān)聽程序與手持設(shè)備客戶端程序發(fā)送斷開通知,斷開連接或者直接斷開連接。通過上述手段,可以提供虛擬外設(shè)功能,極大地增強了智能電視的使用體驗。
權(quán)利要求
1.基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,所述智能電視終端中設(shè)有虛擬外設(shè)監(jiān)聽程序,所述手持設(shè)備中設(shè)有虛擬外設(shè)客戶端程序,其特征在于,該方法包括以下步驟 a.智能電視終端啟動虛擬外設(shè)監(jiān)聽程序,監(jiān)聽虛擬外設(shè)的狀態(tài); b.手持設(shè)備啟動虛擬外設(shè)客戶端程序,搜索網(wǎng)絡(luò)環(huán)境內(nèi)的智能電視終端; c.在手持設(shè)備上根據(jù)搜索的結(jié)果,選擇需要連接的智能電視終端; d.智能電視終端向手持設(shè)備查詢可以使用的具體服務(wù); e.手持設(shè)備向智能電視終端注冊可以提供的服務(wù)類型; f.手持設(shè)備捕獲虛擬外設(shè)事件,并將虛擬外設(shè)事件按照指定格式發(fā)送至智能電視終端; g.智能電視終端接收虛擬外設(shè)事件,并將其轉(zhuǎn)換為可識別的系統(tǒng)標準事件,寫入相應(yīng)驅(qū)動文件; h.當(dāng)智能電視終端對事件處理完成后,斷開與手持設(shè)備的連接。
2.如權(quán)利要求I所述的基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,其特征在于,在步驟a之前還包括步驟 aO.選擇以太網(wǎng)通信端口號,定義智能電視終端與手持設(shè)備之間的數(shù)據(jù)傳輸格式。
3.如權(quán)利要求2所述的基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,其特征在于,采用XML定義數(shù)據(jù)傳輸格式,分為設(shè)備描述文件、服務(wù)描述文件、服務(wù)描述文件、事件描述文件。
4.如權(quán)利要求1-3任意一項所述的基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,其特征在于,所述智能電視終端中的虛擬外設(shè)監(jiān)聽程序以Android Service的方式運行,對指定的端口進行事件監(jiān)控,通過IBinder接口與智能電視終端的其它組件通信。
5.如權(quán)利要求1-3任意一項所述的基于智能電視終端與手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,其特征在于,步驟h中,所述智能電視終端斷開與手持設(shè)備連接的方式為智能電視終端的虛擬外設(shè)監(jiān)聽程序與手持設(shè)備的虛擬外設(shè)客戶端程序發(fā)送斷開通知從而斷開連接或者直接斷開連接。
全文摘要
本發(fā)明涉及嵌入式軟件的應(yīng)用技術(shù),其公開了一種基于智能電視終端和手持設(shè)備實現(xiàn)虛擬外設(shè)的方法,解決目前智能電視終端的外設(shè)不能滿足操控需要的問題。該方法包括以下步驟在電視終端啟動虛擬外設(shè)后臺監(jiān)控模塊,監(jiān)聽虛擬外設(shè)的狀態(tài);手持設(shè)備啟動虛擬外設(shè)客戶端程序,搜索網(wǎng)絡(luò)環(huán)境內(nèi)的電視終端;手持設(shè)備根據(jù)搜索結(jié)果,發(fā)現(xiàn)、選擇要連接的電視終端;連接成功后,手持設(shè)備將虛擬外設(shè)事件按照指定格式發(fā)送至電視終端;電視終端監(jiān)控模塊接收事件,完成從虛擬事件到基本事件的轉(zhuǎn)換及驅(qū)動寫入;電視終端接收事件,進行相應(yīng)處理。本發(fā)明適用于對智能電視終端進行虛擬外設(shè)。
文檔編號H04N21/422GK102802081SQ20121025699
公開日2012年11月28日 申請日期2012年7月24日 優(yōu)先權(quán)日2012年7月24日
發(fā)明者嚴勇, 任飛 申請人:四川長虹電器股份有限公司