應用程序控制方法和裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及計算機信息處理技術領域,特別是涉及一種應用程序控制方法和裝置。
【背景技術】
[0002]應用程序運行在終端上,其某些功能通常需要用戶通過操作按鍵、觸摸觸控板等輸入設備來向應用程序傳遞輸入指令,使其做出符合預期的響應。比如用戶點擊設置在終端上的返回功能鍵,則執(zhí)行返回的功能,若點擊終端上的工具菜單呼出鍵則會調出菜單界面等等。
[0003]然而,目前采用的如按鍵或觸控板的輸入設備為應用程序傳遞輸入指令,在長時間使用之后容易發(fā)生故障,此時應用程序將無法使用;而且人手長時間操作按鍵或者觸控板也會導致手指疲勞。
【發(fā)明內容】
[0004]基于此,有必要針對目前通過如按鍵或觸控板的輸入設備為應用程序傳遞輸入指令,容易發(fā)生故障的問題,提供一種應用程序控制方法和裝置。
[0005]一種應用程序控制方法,所述方法包括:
[0006]獲取配置信息,所述配置信息包括傳感器數據范圍與控制指令的映射關系;
[0007]從操作系統實時獲取傳感器數據;
[0008]檢測到所述傳感器數據與所述傳感器數據范圍匹配時,根據所述傳感器數據范圍與控制指令的映射關系,將所述傳感器數據轉換為模擬的控制指令;
[0009]將所述模擬的控制指令傳遞給所述操作系統的輸入服務模塊,通過所述輸入服務模塊而將所述模擬的控制指令傳遞給應用程序。
[0010]一種應用程序控制裝置,所述裝置包括:
[0011]配置信息獲取模塊,用于獲取配置信息,所述配置信息包括傳感器數據范圍與控制指令的映射關系;
[0012]傳感器數據獲取模塊,用于從操作系統實時獲取傳感器數據;
[0013]控制模塊,用于檢測到所述傳感器數據與所述傳感器數據范圍匹配時,根據所述傳感器數據范圍與控制指令的映射關系,將所述傳感器數據轉換為模擬的控制指令;將所述模擬的控制指令傳遞給所述操作系統的輸入服務模塊,通過所述輸入服務模塊而將所述模擬的控制指令傳遞給應用程序。
[0014]上述應用程序控制方法和裝置,將傳感器的功能進行轉換,映射為模擬的控制指令,再傳遞給應用程序,就可以通過傳感器來代替如按鍵或觸控板的輸入設備來控制應用程序,即使如按鍵或觸控板的輸入設備發(fā)生故障也可以通過傳感器的功能轉換控制應用程序。而且,利用了操作系統自身的輸入服務模塊來將模擬的控制指令傳遞給應用程序,應用程序本身不需要為了實現這種應用程序控制方式而重新編寫,而且可以適用于各種應用程序,節(jié)約了成本,通用性強。
【附圖說明】
[0015]圖1為一個實施例中應用程序控制方法的流程示意圖;
[0016]圖2為一個實施例中傳感器類型配置界面的示意圖;
[0017]圖3為一個實施例中傳感器數據范圍配置界面的示意圖;
[0018]圖4為一個實施例中觸發(fā)事件配置界面的示意圖;
[0019]圖5為一個實施例中觸發(fā)功能配置界面的示意圖;
[0020]圖6為一個實施例中映射結果確定界面的示意圖;
[0021]圖7為一個實施例中配置信息編輯界面的示意圖;
[0022]圖8為一個實施例中傳感器數據范圍矯正界面的示意圖;
[0023]圖9為一個實施例中應用程序控制裝置的結構框圖;
[0024]圖10為另一個實施例中應用程序控制裝置的結構框圖;
[0025]圖11為再一個實施例中應用程序控制裝置的結構框圖;
[0026]圖12為一個實施例中應用程序控制裝置的環(huán)境圖。
【具體實施方式】
[0027]為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結合附圖及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0028]如圖1所示,在一個實施例中,提供了一種應用程序控制方法,本實施例以該方法應用于終端來舉例說明。該終端可以是手機、平板電腦等移動終端,也可以是臺式計算機。該終端上獨立運行有中間件服務模塊,用于實現該應用程序控制方法。該方法具體包括如下步驟:
[0029]步驟102,獲取配置信息,配置信息包括傳感器數據范圍與控制指令的映射關系。
[0030]具體地,終端可以通過讀取指定位置存儲的配置文件而獲取配置信息,或者可以通過提供配置界面而錄入配置信息后緩存,從而在需要時獲取緩存的配置信息。配置信息是限定傳感器數據如何轉換為相應的控制指令的信息,至少包括傳感器數據范圍與控制指令的映射關系??梢酝ㄟ^傳感器數據范圍與用于觸發(fā)相應的控制指令的觸發(fā)事件的對應關系來表示這種映射關系。
[0031]傳感器(英文名稱-Transducer或Sensor)是一種檢測裝置,能感受到被測量的信息,并能將感受到的信息,按一定規(guī)律變換成為電信號或其他所需形式的信息輸出,以滿足信息的傳輸、處理、存儲、顯示、記錄和控制等要求。本實施例中傳感器包括但不限于重力傳感器、加速度傳感器、陀螺儀傳感器、地磁傳感器、溫度傳感器、距離傳感器、光線傳感器和壓力傳感器。
[0032]步驟104,從操作系統實時獲取傳感器數據。
[0033]具體地,這里的操作系統可以是Android (安卓)操作系統、Windows (視窗)操作系統或者1S操作系統(蘋果公司開發(fā)的操作系統)。操作系統自身或者通過安裝驅動程序后具有獲取傳感器數據的功能,傳感器在發(fā)生作用時會輸出傳感器數據,操作系統則通過監(jiān)聽傳感器的輸出而獲取到傳感器數據。
[0034]步驟106,檢測到傳感器數據與傳感器數據范圍匹配時,根據傳感器數據范圍與控制指令的映射關系,將傳感器數據轉換為模擬的控制指令。
[0035]傳感器數據范圍與控制指令的映射關系表示若傳感器提供的傳感器數據在該傳感器數據范圍內,則將該傳感器數據映射為該控制指令。在一個實施例中可以根據傳感器數據范圍與控制指令的映射關系,創(chuàng)建相應的模擬觸發(fā)事件,然后根據該模擬事件觸發(fā)相應的模擬的控制指令。
[0036]具體若傳感器是運動傳感器,比如重力傳感器、陀螺儀傳感器等,則其提供的傳感器數據可以是表示力作用方向和大小的三個軸向的數據中至少一個軸向的數據。若傳感器是壓力傳感器,則其提供的傳感器數據可以是表示受力大小的值。傳感器數據范圍可以是大于或者小于或者等于某一值,也可以是具有首尾兩個端點的區(qū)間值。
[0037]控制指令可以是應用程序支持的可輸入的任意控制指令,可以是終端上按鍵或者預定義的觸控手勢所對應的控制指令,比如返回鍵的返回控制指令映射為一個傳感器數據范圍,而將菜單呼出鍵的菜單呼出控制指令映射為另一個傳感器數據范圍。這里模擬的控制指令,是指該控制指令不是通過常規(guī)的檢測到按鍵事件或者觸摸事件等實際觸發(fā)事件時所觸發(fā)的,而是根據傳感器數據所轉換而來的控制指令。
[0038]步驟108,將模擬的控制指令傳遞給操作系統的輸入服務模塊,通過輸入服務模塊而將模擬的控制指令傳遞給應用程序。
[0039]具體地,輸入服務模塊作為獨立運行的服務模塊運行在操作系統上,用于為應用程序提供輸入服務的支持。比如用戶點擊鼠標、觸摸觸控板或者按壓按鍵所產生的控制指令都會通過輸入服務模塊傳遞給應用程序。這里將模擬的控制指令也通過該輸入服務模塊傳遞給應用程序,使應用程序根據該模擬的控制指令作出響應。應用程序不需要也難以分辨輸入服務模塊提供的控制指令是終端在檢測到相應的觸發(fā)事件時所產生的,還是模擬的控制指令。
[0040]這里的被