机顶盒装linux教程,一种Linux机顶盒焦点控制方法与流程
本發明涉及數字電視機頂盒技術領域,具體涉及一種Linux機頂盒焦點控制方法。
背景技術:
在個人電腦上瀏覽頁面時,一般直接用鼠標點擊想要查看到的頁面鏈接,瀏覽器即可跳轉到鏈接所指向的頁面。但在數字電視交互應用中,是以機頂盒為載體,向用戶呈現業務,由于沒有鼠標,只有遙控器,所以在數字電視機頂盒環境中進行焦點切換的工作只能依靠遙控器來完成。因此,焦點控制對用戶體驗有著較大的影響。
傳統上在進入數字電視業務頁面后,按照機頂盒默認的焦點,機頂盒會選中具有超鏈接屬性的區域,且在光標移動時,選中的位置與具有超鏈接屬性區域的位置及大小有關,默認找距離最近的超鏈接,不具備規律性,這歸源于機頂盒自身屬性,是無法改變控制的,如果以默認的焦點具備規律性,那么必須對業務的終端的設計進行非常規范的排版,但在一些業務中對光標的位置選擇有業務自身的邏輯需求,且每個業務的特性以及對用戶的UI(User Interface)、UE(User Experience)的體驗又要求終端設計是靈活多變的,開發人員需要對具有超鏈接屬性區域的位置及大小進行調試,且不同的機頂盒會存在一定差異,不同的機頂盒會進行不同的調試,這在一定程度上給開發人員造成困難,耗時耗力、帶來極大不便,摒棄機頂盒默認焦點屬性,使光標精準地按自身業務邏輯移動,成為機頂盒業務開發領域的一大難題。
技術實現要素:
本發明的目的在于提供一種Linux機頂盒焦點控制方法,用以解決現有Linux機頂盒超鏈接默認焦點不受控制,不同機頂盒焦點邏輯不同,用戶體驗差等問題。使光標精準地按自身業務邏輯移動,靈活控制焦點的選中。
為實現上述目的,本發明提供了一種Linux機頂盒焦點控制方法,通過攔截機頂盒鍵值,使用JS(Java Script)控制焦點邏輯。具體地,該方法包括如下步驟:
步驟S11.機頂盒接收到遙控器發出的紅外線信號;
步驟S12.所述機頂盒將接收到的所述紅外線信號轉換成十進制的值并被所述機頂盒的當前業務界面攔截;
步驟S13.所述當機頂盒根據攔截到的所述十進制的值判斷遙控器按下的是哪個鍵;
步驟S14.所述機頂盒控制所述當前業務界面按照所述按下的鍵值執行焦點移動邏輯或觸發與所述鍵值對應的運行方法。
進一步地,所述步驟S13中的遙控器鍵包括上下左右四個方向鍵、確認鍵和返回鍵。
進一步地,所述步驟S14中的所述運行方法為確定或返回。
進一步地,所述步驟S14中焦點移動邏輯采用假焦點移動形式,通過對所述業務界面中需要選擇的區域進行編碼獲得標識碼,并所述標識碼放在同一數組中,根據所述數組下標獲取標識碼來改變所屬區域樣式。
進一步地,所述業務界面可根據功能位置不同劃分為不同模塊,所述每一個模塊包含若干區域,所述每一個模塊用一個數組表示。
進一步地,所述假焦點移動形式中焦點移動邏輯判斷獲取方法如下:
所述機頂盒開發人員根據特定業務邏輯要求和用戶需求,對所述業務界面進行調試得到所述焦點移動對應邏輯判斷。
進一步地,所述假焦點移動形式邏輯判斷調試方法步驟如下:
步驟S21.對需要選擇的區域進行有序編碼,獲得所述選擇區域的標識碼,并將所述標識碼放在同一數組中;
步驟S22.初次訪問機頂盒業務時,默認從數組下標為0的位置取所述標識碼,改變所述標識碼所屬區域的樣式,此區域變為焦點選中狀態;
步驟S23.在光標向右移動時,數組下標加1,拿到數組下標為1的標識碼,同樣改變該標識碼所屬區域的樣式,此區域變為焦點選中狀態,前面數組下標為0的標識碼所屬區域的樣式則變為焦點離開狀態;
步驟S24.在光標向左移動時,數組下標減1,判斷是否存在左邊區域,若存在,則把所述左邊區域設置為焦點選中狀態;若不存在,則保持位置為最左邊,并保持當前焦點選中狀態;
步驟S25.在光標上下移動時根據上下選擇區域數量不同,所述數組下標加減值不同。
步驟S26.當光標從一個模塊移動到另一個模塊時,則直接找到該選擇區域的標識碼,根據所述標識碼選中所屬區域,把所述區域設置為焦點選中狀態。
本發明方法具有如下優點:
摒棄機頂盒默認焦點屬性,使光標精準地按自身業務邏輯移動,減輕了特定業務邏輯需求中開發人員對具有超鏈接屬性區域的位置及大小進行調試的困難。焦點靈活控制,遙控器操作更加靈活多變,提升了用戶焦點移動體驗。可以廣泛適用所有Linux機頂盒,具備通用性。
附圖說明
圖1是本發明實施例中的Linux機頂盒焦點控制方法流程示意圖。
圖2本發明實施例中的假焦點移動形式實現示意圖。
具體實施方式
以下實施例用于說明本發明,但不用來限制本發明的范圍。
本發明提供了一種Linux機頂盒焦點控制方法,通過攔截機頂盒鍵值,再使用JS(Java Script)控制焦點邏輯,該方法流程圖如圖1所示,具體步驟如下:
步驟S11.機頂盒接收到遙控器發出的紅外線信號。
由于沒有鼠標,只有遙控器,所以在數字電視機頂盒環境中進行焦點切換的工作只能依靠遙控器來完成。
步驟S12.機頂盒將接收到的紅外線信號轉換成十進制的值并被機頂盒當前業務界面攔截。
紅外信號無法直接被JS處理,因此需要使用信號轉換器將紅外線信號轉換為十進制值,機頂盒當前業務界面為機頂盒當前正在處理的頁面,該頁面顯示在機頂盒控制的屏幕上,用戶通過遙控器控制光標的移動對該頁面上的業務進行選擇。
步驟S13.所述機頂盒根據攔截到的十進制的值判斷遙控器按下的是哪個鍵。遙控器上的按鍵一般包括:上下左右方向鍵、數字鍵、確認鍵和返回鍵等鍵。其中,方向鍵用于切換焦點,確定鍵用于點擊進入焦點連接的頁面,返回鍵用于返回上個欄目頁面。對于使用Linux嵌入式瀏覽器來說,主要通過方向鍵和確認鍵來完成。
遙控器不同按鍵發出的紅外信號編碼不同,根據該紅外信號編碼轉化后的十進制值可以判斷出遙控器按下的是哪一個鍵。
步驟S14.機頂盒控制當前業務界面按照按下的鍵值執行焦點移動邏輯或觸發與所述鍵值對應的運行方法。
其中,焦點移動邏輯采用假焦點移動形式,通過對需要選擇的區域進行編碼獲得標識碼,并標識碼放在同一數組中,根據數組下標獲取標識碼來改變所屬區域樣式。
業務界面可根據功能位置不同劃分為不同模塊,每一個模塊包含若干區域,每一個模塊用一個數組表示。
機頂盒開發人員根據特定業務邏輯要求和用戶需求,對業務界面進行調試得到焦點移動對應邏輯判斷。
假焦點移動邏輯判斷調試方法步驟如下:
步驟S21.對需要選擇的區域進行有序編碼,獲得選擇區域的標識碼,并將標識碼放在同一數組中;
步驟S22.初次訪問機頂盒業務時,默認從數組下標為0的位置取標識碼,改變標識碼所屬區域的樣式,此區域變為焦點選中狀態;
步驟S23.在光標向右移動時,數組下標加1,拿到數組下標為1的標識碼,同樣改變該標識碼所屬區域的樣式,此區域變為焦點選中狀態,前面數組下標為0的標識碼所屬區域的樣式則變為焦點離開狀態;
步驟S24.在光標向左移動時,數組下標減1,判斷是否存在左邊區域,若存在,則把左邊區域設置為焦點選中狀態;若不存在,則保持位置為最左邊,并保持當前焦點選中狀態;
步驟S25.在光標上下移動時根據上下選擇區域數量不同,數組下標加減值不同。
步驟S26.當光標從一個模塊移動到另一個模塊時,則直接找到該選擇區域的標識碼,根據標識碼選中所屬區域,把該區域設置為焦點選中狀態。
按普通焦點移動方式當光標在從一個模塊向另外一個模塊移動時則光標位置不好判斷,只能依靠調試。而按假焦點移動形式的數組形式移動就能定位到具體的位置,在移動的時候通過JS直接找到該選擇區域的標識碼即可。
假焦點形式設計給開發人員帶來極大便利,使得光標按自己的方式精準移動,省時、高效。
現有技術中焦點移動時機頂盒會默認選中具有超鏈接屬性的區域,且在光標移動時,選中的位置與具有超鏈接屬性區域的位置及大小有關,如果特定業務中對光標的位置選擇有業務自身的邏輯需求,則開發人員需要對具有超鏈接屬性區域的位置及大小進行調試,且不同的機頂盒會存在一定差異,不同的機頂盒會進行不同的調試。如圖2所示,假設當前光標在A1位置,現在的業務邏輯需求是要光標移動到A2位置,如果依機頂盒默認屬性光標右移的話,光標會移動到A3位置,但是現在的業務邏輯需求是要光標移動到A2位置,需要將A2的方形小邊框向下移動到接近A3區域的位置,而A3的方形小邊框也要向下移動給A2的方形小邊框騰出位置,開發人員經過不斷調試后,才有可能實現光標移動到A2位置,費時費力且不容易調試。而使用本實施例公開的假焦點移動形式,在設計時則只需要將A1、A2、A3三個標識碼放在一個數組中,用con來表示一個數組,數組下標為0則con[0]=A1,數組下標為1則con[1]=A2,數組下標為2則con[2]=A3,當前選中區域為A1即con[0]為選中狀態,當光標向右移動時,只需要將數組下標加1,con[0]變為con[1],con[1]即A2區域的樣式變為選中狀態,而con[0]即A1區域的樣式變為離開狀態,如果想讓光標直接移動到A3區域,則數組下標加2即可,從而實現光標的選擇性移動,在光標移動的時候不需要考慮具有超鏈接屬性區域的位置,不需要繁瑣的調試且移動精準,很大程度上節省了時間、提高開發效率。
雖然,上文中已經用一般性說明及具體實施例對本發明作了詳盡的描述,但在本發明基礎上,可以對之作一些修改或改進,這對本領域技術人員而言是顯而易見的。因此,在不偏離本發明精神的基礎上所做的這些修改或改進,均屬于本發明要求保護的范圍。
總結
以上是生活随笔為你收集整理的机顶盒装linux教程,一种Linux机顶盒焦点控制方法与流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 爬虫注意事项
- 下一篇: 在Linux下使用“360随身WiFi