元件標(biāo)號說明
[0055]I 空鼠節(jié)點(diǎn)生成模塊
[0056]2 空鼠數(shù)據(jù)接收模塊
[0057]3 空鼠事件處理模塊
【具體實(shí)施方式】
[0058]以下通過特定的具體實(shí)例說明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過另外不同的【具體實(shí)施方式】加以實(shí)施或應(yīng)用,本說明書中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。需說明的是,在不沖突的情況下,以下實(shí)施例及實(shí)施例中的特征可以相互組合。
[0059]需要說明的是,以下實(shí)施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實(shí)際實(shí)施時的組件數(shù)目、形狀及尺寸繪制,其實(shí)際實(shí)施時各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
[0060]需要說明的是,本發(fā)明中所涉及的智能終端是指具有獨(dú)立的操作系統(tǒng),可以由用戶自行安裝軟件、游戲等第三方服務(wù)商提供的程序,通過此類程序來不斷對終端設(shè)備的功能進(jìn)行擴(kuò)充,并可以通過移動通訊網(wǎng)絡(luò)來實(shí)現(xiàn)無線網(wǎng)絡(luò)接入的這樣一類終端設(shè)備。
[0061]本發(fā)明中所涉及的智能終端屏幕包括但不限于智能機(jī)頂盒、智能電視等具有獨(dú)立操作系統(tǒng)、可以實(shí)現(xiàn)無線網(wǎng)絡(luò)接入的這樣一類的智能終端設(shè)備。凡是能夠?qū)崿F(xiàn)虛擬空鼠的智能終端設(shè)備均在本發(fā)明的智能終端屏幕的范圍之內(nèi)。
[0062]參照圖2和圖3,本發(fā)明基于智能終端的智能終端屏幕實(shí)現(xiàn)虛擬空鼠的方法包括以下步驟:
[0063]步驟S1、智能終端屏幕生成一個虛擬的空鼠節(jié)點(diǎn)。
[0064]具體地,生成虛擬的空鼠節(jié)點(diǎn)包括以下步驟:
[0065]11)在智能終端屏幕系統(tǒng)底層庫Iibinput創(chuàng)建一個具有光標(biāo)和鍵盤屬性的虛擬的空鼠節(jié)點(diǎn)。
[0066]其中,空鼠節(jié)點(diǎn)的屬性描述符如下:
[0067]INPUT_DEVICE_CLASS_CURSOR
[0068]INPUT_DEVICE_CLASS_KEYBOARD
[0069]INPUT_DEVICE_CLASS_VIRTUAL
[0070]12)將創(chuàng)建好的虛擬的空鼠節(jié)點(diǎn)添加到智能終端屏幕的設(shè)備列表中。
[0071]以上步驟即為本發(fā)明的虛擬的空鼠節(jié)點(diǎn)的實(shí)現(xiàn)方法,該方法與傳統(tǒng)的uinput的虛擬方式不同,本發(fā)明從非驅(qū)動的角度模擬空鼠節(jié)點(diǎn),從而無需在軟件上匹配各類驅(qū)動。
[0072]步驟S2、當(dāng)智能終端發(fā)送來模擬的空鼠數(shù)據(jù)時,智能終端屏幕通過虛擬的空鼠節(jié)點(diǎn)接收模擬的空鼠數(shù)據(jù)。
[0073]具體地,當(dāng)用戶上下左右擺動智能終端時,智能終端采集其上的陀螺儀所獲取的陀螺儀數(shù)據(jù),從而生成模擬的空鼠數(shù)據(jù)。當(dāng)用戶點(diǎn)擊智能終端上鼠標(biāo)的左右鍵時,智能終端獲取所點(diǎn)擊左鍵或右鍵的標(biāo)識信息,從而生成模擬的空鼠數(shù)據(jù)。
[0074]智能終端通過無線通信的方式將生成的模擬的空鼠數(shù)據(jù)發(fā)送至智能終端屏幕的虛擬的空鼠節(jié)點(diǎn)。其中,無線通信的方式包括藍(lán)牙、GPRS、WiF1、3G、4G等通信方式。
[0075]在本發(fā)明中,智能終端屏幕的系統(tǒng)底層庫中創(chuàng)建套接字(socket),同時智能終端的應(yīng)用中也對應(yīng)創(chuàng)建套接字,以實(shí)現(xiàn)虛擬的空鼠節(jié)點(diǎn)與智能終端間的無線數(shù)據(jù)傳輸。將智能終端屏幕的套接字添加入EPOOL輪詢隊(duì)列中,智能終端屏幕的輸入系統(tǒng)輪詢虛擬的空鼠節(jié)點(diǎn),獲取并解析模擬的空鼠數(shù)據(jù),并將解析后的空鼠數(shù)據(jù)傳送至事件派發(fā)系統(tǒng),從而能夠與現(xiàn)有的空鼠方案相互兼容。
[0076]步驟S3、根據(jù)接收到的模擬的空鼠數(shù)據(jù),智能終端屏幕生成對應(yīng)的空鼠事件,以供智能終端屏幕的應(yīng)用響應(yīng)。
[0077]具體地,步驟S3包括以下步驟:
[0078]31)智能終端屏幕的輸入系統(tǒng)輪詢虛擬的空鼠節(jié)點(diǎn),獲取并解析模擬的空鼠數(shù)據(jù),并將解析后的空鼠數(shù)據(jù)傳送至事件派發(fā)系統(tǒng)。
[0079]智能終端屏幕接收到模擬的空鼠數(shù)據(jù)時,需要進(jìn)行對其進(jìn)行解析以生成實(shí)際的空鼠數(shù)據(jù)。其中,解析后的空鼠數(shù)據(jù)包括坐標(biāo)數(shù)據(jù)和左右鍵數(shù)據(jù)。
[0080]具體地,解析模擬的空鼠數(shù)據(jù)時包括以下內(nèi)容:
[0081]a)當(dāng)模擬的空鼠數(shù)據(jù)為陀螺儀數(shù)據(jù)時,其與光標(biāo)的對應(yīng)關(guān)系如下:
[0082]陀螺儀的Z軸數(shù)據(jù)中,+z表不光標(biāo)左移;-Z表不光標(biāo)右移。
[0083]陀螺儀的X軸數(shù)據(jù)中,+X表示光標(biāo)上移;-X表示光標(biāo)下移。
[0084]由于陀螺儀數(shù)據(jù)的敏感性,手部微小的抖動就會引起光標(biāo)較大的位移。因此,在智能終端屏幕需要對陀螺儀數(shù)據(jù)進(jìn)行處理。
[0085]如圖4所示,對陀螺儀數(shù)據(jù)的處理方式如下:當(dāng)陀螺儀數(shù)據(jù)小于第一半徑rl或者大于第二半徑r2時,舍棄數(shù)據(jù);當(dāng)陀螺儀數(shù)據(jù)處于[rl,r2]區(qū)間時,陀螺儀數(shù)據(jù)有效,再將有效陀螺儀數(shù)據(jù)分段進(jìn)行倍數(shù)放大,最終得到空鼠的坐標(biāo)數(shù)據(jù)。由于不同的硬件設(shè)計(jì),陀螺儀采樣精度不同,rl 一般選取陀螺儀±3°/sec的零偏誤差。r2的值取決于陀螺儀所能產(chǎn)生的最大角速度。
[0086]b)當(dāng)模擬的空鼠數(shù)據(jù)為左鍵或右鍵的標(biāo)識信息時,根據(jù)標(biāo)識信息生成空鼠的左鍵或右鍵數(shù)據(jù)。
[0087]具體地,智能終端屏幕根據(jù)下式構(gòu)造空鼠的左鍵或右鍵數(shù)據(jù):
[0088]鼠標(biāo)左鍵:0x040x04 0x90001+0x01 0x110 Act1n+OxOO 0x00 0x00
[0089]鼠標(biāo)右鍵:0x040x04 0x90002+0x01 Oxlll Act1n+OxOO 0x00 0x00
[0090]其中:Act1n為0x01時,表示按下狀態(tài)[0091 ] Act1n為0x00時,表示抬起狀態(tài)
[0092]32)事件派發(fā)系統(tǒng)根據(jù)解析后的空鼠數(shù)據(jù)生成空鼠事件,并將空鼠事件派發(fā)至智能終端屏幕的應(yīng)用,以便智能終端屏幕的應(yīng)用響應(yīng)。
[0093]具體地,事件派發(fā)系統(tǒng)根據(jù)解析后的空鼠數(shù)據(jù),生成坐標(biāo)事件和/或左右鍵事件,并將坐標(biāo)事件和/或左右鍵事件派發(fā)到各應(yīng)用界面,以便各應(yīng)用進(jìn)行響應(yīng)。當(dāng)空鼠事件為坐標(biāo)事件時,界面光標(biāo)上下左右移動;當(dāng)空鼠事件為左右鍵事件時,則響應(yīng)相應(yīng)的具體事件。
[0094]參照圖5,本發(fā)明基于智能終端的智能終端屏幕實(shí)現(xiàn)虛擬空鼠的系統(tǒng)包括空鼠節(jié)點(diǎn)生成模塊1、空鼠數(shù)據(jù)接收模塊2和空鼠事件處理模塊3。
[0095]空鼠節(jié)點(diǎn)生成模塊I用于生成一個虛擬的空鼠節(jié)點(diǎn)。
[0096]具體地,生成虛擬的空鼠節(jié)點(diǎn)包括以下步驟:
[0097]11)在智能終端屏幕系統(tǒng)底層庫Iibinput創(chuàng)建一個具有光標(biāo)和鍵盤屬性的虛擬的空鼠節(jié)點(diǎn)。
[0098]其中,空鼠節(jié)點(diǎn)的屬性描述符如下:
[0099]INPUT_DEVICE_CLASS_CURSOR
[0100]INPUT_DEVICE_CLASS_KEYBOARD
[0101]INPUT_DEVICE_CLASS_VIRTUAL
[0102]12)將創(chuàng)建好的虛擬的空鼠節(jié)點(diǎn)添加到智能終端屏幕的設(shè)備列表中。
[0103]以上步驟即為本發(fā)明的虛擬的空鼠節(jié)點(diǎn)的實(shí)現(xiàn)方法,該方法與傳統(tǒng)的uinput的虛擬方式不同,本發(fā)明從非驅(qū)動的角度模擬空鼠節(jié)點(diǎn),從而無需在軟件上匹配各類驅(qū)動。
[0104]空鼠數(shù)據(jù)接收模塊2與空鼠節(jié)點(diǎn)生成模塊I相連,用于在智能終端發(fā)送來模擬的空鼠數(shù)據(jù)時,通過虛擬的空鼠節(jié)點(diǎn)接收模擬的空鼠數(shù)據(jù)。
[0105]具體地,當(dāng)用戶上下左右擺動智能終端時,智能終端采集其上的陀螺儀所獲取的陀螺儀數(shù)據(jù),從而生成模擬的空鼠數(shù)據(jù)。當(dāng)用戶點(diǎn)擊智能終端上鼠標(biāo)的左右鍵時,智能終端獲取所點(diǎn)擊左鍵或右鍵的標(biāo)識信息,從而生成模擬的空鼠數(shù)據(jù)。
[0106]智能終端通過無線通信的方式將生成的模擬的空鼠數(shù)據(jù)發(fā)送至智能終端屏幕的虛擬的空鼠節(jié)點(diǎn)。其中,無線通信的方式包括藍(lán)牙、GPRS、WiF1、3G、4G等通信方式。
[0107]在本發(fā)明中,智能終端屏幕的系統(tǒng)底層庫中創(chuàng)建套接字(socket),同時智能終端的應(yīng)用中也對應(yīng)創(chuàng)建套接字,以實(shí)現(xiàn)虛擬的空鼠節(jié)點(diǎn)與智能終端間的無線數(shù)據(jù)傳輸。將智能終端屏幕的套接字添加入EPOOL輪詢隊(duì)列中,智能終端屏幕的輸入系統(tǒng)輪詢虛擬的空鼠節(jié)點(diǎn),獲取并解析模擬的空鼠數(shù)據(jù),并將解析后的空鼠數(shù)據(jù)傳送至事件派發(fā)系統(tǒng),這樣便可以實(shí)現(xiàn)與現(xiàn)有的智能終端屏幕空鼠方案相互兼容。
[0108]空鼠事件處理模塊3與空鼠數(shù)據(jù)接收模塊2相連,用于根據(jù)接收到的模擬的空鼠數(shù)