一種移動(dòng)終端的傳感器處理方法、裝置及移動(dòng)終端的制作方法
【專利摘要】本發(fā)明提供一種移動(dòng)終端的傳感器處理方法、裝置及移動(dòng)終端,包括:檢測移動(dòng)終端當(dāng)前是否在播放視頻;當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。因此本發(fā)明有效降低移動(dòng)終端的耗電,從而提升了移動(dòng)終端的續(xù)航能力。
【專利說明】
一種移動(dòng)終端的傳感器處理方法、裝置及移動(dòng)終端
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及功耗處理技術(shù)領(lǐng)域,尤其涉及一種移動(dòng)終端的傳感器處理方法、裝置及移動(dòng)終端?!颈尘凹夹g(shù)】
[0002]目前,智能系統(tǒng)己經(jīng)是用戶群最大的智能終端操作系統(tǒng)平臺(tái),智能終端是目前許多用戶最常用且最重要的電子設(shè)備,智能終端中各種各樣的傳感器設(shè)備給應(yīng)用多元化功能提供了硬件基礎(chǔ)。但同時(shí),持有傳感器也給智能終端造成了電量消耗。在用戶長時(shí)間觀看視頻場景下,后臺(tái)仍有很多應(yīng)用程序持有傳感器,這些不必要的持有行為給智能終端帶來了額外的耗電,不利于提升智能終端的續(xù)航能力。目前的智能終端功耗優(yōu)化方案中沒有針對(duì)這一場景的有效解決方案。
[0003]故,有必要提出一種新的技術(shù)方案,以解決上述技術(shù)問題。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明的目的在于提供一種移動(dòng)終端的傳感器處理方法、裝置及移動(dòng)終端,旨在解決現(xiàn)有技術(shù)存在的在用戶長時(shí)間觀看視頻場景下,后臺(tái)仍有很多應(yīng)用程序持有傳感器,這些不必要的持有行為給智能終端帶來了額外的耗電,不利于提升智能終端的續(xù)航能力的問題。
[0005]為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了以下技術(shù)方案:
[0006]本發(fā)明實(shí)施例提供了一種移動(dòng)終端的傳感器處理方法,所述移動(dòng)終端的傳感器處理方法,包括以下步驟:
[0007]檢測移動(dòng)終端當(dāng)前是否在播放視頻;
[0008]當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;
[0009]判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;
[0010]如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。
[0011]進(jìn)一步的,在將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接的步驟之后,還包括:
[0012]將移出所述當(dāng)前活躍連接接口隊(duì)列的連接接口保存至待恢復(fù)連接隊(duì)列;
[0013]獲取移出的連接接口對(duì)應(yīng)的傳感器的設(shè)置參數(shù)信息;
[0014]將所述傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中。
[0015]進(jìn)一步的,在將所述傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中的步驟之后,還包括:
[0016]當(dāng)檢測到移動(dòng)終端退出視頻播放時(shí),遍歷所述待恢復(fù)連接隊(duì)列;
[0017]從所述待恢復(fù)參數(shù)隊(duì)列中獲取傳感器的設(shè)置參數(shù)信息;
[0018]根據(jù)所述傳感器的設(shè)置參數(shù)信息,將相應(yīng)的連接接口重新添加到所述當(dāng)前活躍連接接口隊(duì)列中,以恢復(fù)相應(yīng)的傳感器連接。
[0019]進(jìn)一步的,所述移動(dòng)終端的傳感器處理方法,還包括:
[0020]當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),判斷在預(yù)設(shè)時(shí)間內(nèi)是否退出在播放的視頻;
[0021]如果判斷出在預(yù)設(shè)時(shí)間內(nèi)沒有退出在播放的視頻,則執(zhí)行所述遍歷傳感器當(dāng)前活躍連接接口隊(duì)列的步驟。
[0022]進(jìn)一步的,所述檢測移動(dòng)終端當(dāng)前是否在播放視頻的步驟,具體包括:
[0023]檢測移動(dòng)終端當(dāng)前是否持有亮屏鎖以及音頻鎖;
[0024]如果檢測到移動(dòng)終端當(dāng)前同時(shí)持有亮屏鎖以及音頻鎖,則判定移動(dòng)終端當(dāng)前在播放視頻。
[0025]為解決上述技術(shù)問題,本發(fā)明實(shí)施例還提供了以下技術(shù)方案:[〇〇26]本發(fā)明實(shí)施例還提供了一種移動(dòng)終端的傳感器處理裝置,所述移動(dòng)終端的傳感器處理裝置,包括:
[0027]視頻檢測模塊,用于檢測移動(dòng)終端當(dāng)前是否在播放視頻;
[0028]第一遍歷模塊,用于當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;
[0029]過濾判斷模塊,用于判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;
[0030]移出模塊,用于如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。
[0031]進(jìn)一步的,所述移動(dòng)終端的傳感器處理裝置,還包括:
[0032]保存模塊,用于將移出所述當(dāng)前活躍連接接口隊(duì)列的連接接口保存至待恢復(fù)連接隊(duì)列;
[0033]第一參數(shù)獲取模塊,用于獲取移出的連接接口對(duì)應(yīng)的傳感器的設(shè)置參數(shù)信息;
[0034]參數(shù)添加模塊,用于將所述傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中。 [〇〇35]進(jìn)一步的,所述移動(dòng)終端的傳感器處理裝置,還包括:
[0036]第二遍歷模塊,用于當(dāng)檢測到移動(dòng)終端退出視頻播放時(shí),遍歷所述待恢復(fù)連接隊(duì)列;
[0037]第二參數(shù)獲取模塊,用于從所述待恢復(fù)參數(shù)隊(duì)列中獲取傳感器的設(shè)置參數(shù)信息;
[0038]接口添加模塊,用于根據(jù)所述傳感器的設(shè)置參數(shù)信息,將相應(yīng)的連接接口重新添加到所述當(dāng)前活躍連接接口隊(duì)列中,以恢復(fù)相應(yīng)的傳感器連接。[〇〇39]進(jìn)一步的,所述移動(dòng)終端的傳感器處理裝置,還包括:
[0040]時(shí)間判斷模塊,用于當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),判斷在預(yù)設(shè)時(shí)間內(nèi)是否退出在播放的視頻;[〇〇41]所述第一遍歷模塊,具體用于如果判斷出在預(yù)設(shè)時(shí)間內(nèi)沒有退出在播放的視頻, 則遍歷傳感器當(dāng)前活躍連接接口隊(duì)列。
[0042]進(jìn)一步的,所述視頻檢測模塊,具體包括:鎖檢測模塊以及判定模塊;
[0043]所述鎖檢測模塊,用于檢測移動(dòng)終端當(dāng)前是否持有亮屏鎖以及音頻鎖;
[0044]判定模塊,用于如果檢測到移動(dòng)終端當(dāng)前同時(shí)持有亮屏鎖以及音頻鎖,則判定移動(dòng)終端當(dāng)前在播放視頻。
[0045]為解決上述技術(shù)問題,本發(fā)明實(shí)施例還提供了以下技術(shù)方案:
[0046]本發(fā)明實(shí)施例還提供了一種包括上面所述的移動(dòng)終端的傳感器處理裝置的移動(dòng)終端。[〇〇47]相對(duì)于現(xiàn)有技術(shù),本發(fā)明的移動(dòng)終端的傳感器處理方法、裝置及移動(dòng)終端,通過檢測移動(dòng)終端當(dāng)前是否在播放視頻;當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中, 所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。即本發(fā)明在播放視頻時(shí)自動(dòng)釋放符合要求的傳感器連接,退出視頻播放時(shí)恢復(fù)傳感器連接。因此本發(fā)明有效降低移動(dòng)終端的耗電, 從而提升了移動(dòng)終端的續(xù)航能力?!靖綀D說明】[〇〇48]圖1是本發(fā)明實(shí)施例一提供的移動(dòng)終端的傳感器處理方法的實(shí)現(xiàn)流程示意圖;
[0049]圖2是本發(fā)明實(shí)施例二提供的釋放傳感器連接的實(shí)現(xiàn)流程示意圖;
[0050]圖3是本發(fā)明實(shí)施例三提供的恢復(fù)傳感器連接的實(shí)現(xiàn)流程示意圖;
[0051]圖4是本發(fā)明實(shí)施例四提供的移動(dòng)終端的傳感器處理裝置的模塊示意圖;[〇〇52]圖5是本發(fā)明實(shí)施例五提供的移動(dòng)終端的傳感器處理裝置的詳細(xì)模塊示意圖?!揪唧w實(shí)施方式】
[0053]請(qǐng)參照附圖中的圖式,其中相同的組件符號(hào)代表相同的組件,本發(fā)明的原理是以實(shí)施在一適當(dāng)?shù)倪\(yùn)算環(huán)境中來舉例說明。以下的說明是基于所示例的本發(fā)明的具體實(shí)施例,其不應(yīng)被視為限制本發(fā)明未在此詳述的其它具體實(shí)施例。[〇〇54]本發(fā)明原理以上述文字來說明,其并不代表為一種限制,本領(lǐng)域技術(shù)人員將可了解到以下所述的多種步驟及操作亦可實(shí)施在硬件當(dāng)中。本發(fā)明的原理使用許多其它泛用性或特定目的運(yùn)算、通信環(huán)境或組態(tài)來進(jìn)行操作。
[0055]需要說明的是,本發(fā)明實(shí)施例的執(zhí)行主體可以為移動(dòng)終端。移動(dòng)終端可以包括移動(dòng)電話(或稱為“蜂窩”電話,如智能手機(jī))和具有移動(dòng)終端的計(jì)算機(jī),例如,平板電腦,還可以是便攜式、袖珍式、手持式車載計(jì)算機(jī)內(nèi)置的移動(dòng)裝置,它們與無線接入網(wǎng)交換語言和/ 或數(shù)據(jù)。例如,個(gè)人通信業(yè)務(wù)(Personal Communicat1n Service,PCS)電話、無繩電話、會(huì)話發(fā)起協(xié)議(Sess1n Initiat1n Protocol,SIP)話機(jī)、無線本地環(huán)路(Wireless Local Loop,WLL)站、個(gè)人數(shù)字助理(Personal Digital Assistant,PDA)等設(shè)備,在此不作限定。
[0056]以下結(jié)合具體實(shí)施例對(duì)本發(fā)明的實(shí)現(xiàn)進(jìn)行詳細(xì)描述:[〇〇57] 實(shí)施例一[〇〇58]請(qǐng)參閱圖1,所示為本發(fā)明實(shí)施例提供的移動(dòng)終端的傳感器處理方法。[〇〇59]所述移動(dòng)終端的傳感器處理方法,應(yīng)用于移動(dòng)終端中,具體包括如下步驟:[〇〇6〇]在步驟S101中,檢測移動(dòng)終端當(dāng)前是否在播放視頻;
[0061]其中,所述檢測移動(dòng)終端當(dāng)前是否在播放視頻的步驟,具體包括:
[0062]檢測移動(dòng)終端當(dāng)前是否持有亮屏鎖以及音頻鎖;
[0063]如果檢測到移動(dòng)終端當(dāng)前同時(shí)持有亮屏鎖以及音頻鎖,則判定移動(dòng)終端當(dāng)前在播放視頻。
[0064]例如,移動(dòng)終端在進(jìn)行視頻播放時(shí)有兩個(gè)顯著特點(diǎn):要持有亮屏鎖保持屏幕常亮, 以及要持有Aud1Mix(音頻)鎖保證聲音播放正常。因此可知,通過這兩個(gè)條件可以準(zhǔn)確識(shí)別視頻播放場景。在PowerManagerService的acquireWakeLocklnternal方法中,判斷應(yīng)用申請(qǐng)鎖的類型是否為SCREEN_BRIGHT_WAKE_LOCK。若為該類型,則判斷該應(yīng)用是否同時(shí)持有 Aud1Mix鎖,若該條件滿足,則認(rèn)為該應(yīng)用在播放視頻。
[0065]然而,可以理解的是,并不限于上述判斷方式,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
[0066]在本發(fā)明實(shí)施例中,當(dāng)應(yīng)用程序需要使用傳感器時(shí),給所述應(yīng)用程序分配一連接接口,通過所述連接接口,所述應(yīng)用程序能調(diào)用所述傳感器進(jìn)行工作;將分配的連接接口添加至所述傳感器當(dāng)前活躍連接接口隊(duì)列中。[〇〇67]下面詳細(xì)描述管理傳感器的功能架構(gòu)。[〇〇68]在移動(dòng)終端Android系統(tǒng)中,傳感器管理框架可分為客戶端、服務(wù)端、HAL(抽象層) 層。其中客戶端為應(yīng)用程序封裝使用傳感器的接口,服務(wù)端負(fù)責(zé)所有傳感器數(shù)據(jù)的管理, HAL層封裝了服務(wù)端對(duì)Kernel(內(nèi)核)的直接訪問。服務(wù)端從HAL層中讀取傳感器數(shù)據(jù),并寫入到管道中,客戶端通過管道讀取服務(wù)端數(shù)據(jù)。[0〇69]當(dāng)應(yīng)用程序需要使用傳感器時(shí),首先獲取客戶端的SystemSensorManager實(shí)例,通過該實(shí)例注冊(cè)監(jiān)聽接口。注冊(cè)監(jiān)聽接口后,服務(wù)端會(huì)為客戶端提供一個(gè) SensorEventConnect1n連接接口,該連接接口分配給應(yīng)用程序,通過該連接接口,應(yīng)用程序通過客戶端可以從傳感器中獲取數(shù)據(jù)。[0〇7〇]當(dāng)客戶端注冊(cè)監(jiān)聽接口時(shí),服務(wù)端會(huì)調(diào)用傳感器設(shè)備的enable(使能)接口,使能該傳感器設(shè)備。當(dāng)客戶端取消注冊(cè)監(jiān)聽接口時(shí),服務(wù)端會(huì)調(diào)用傳感器設(shè)備的disable(禁用) 接口,禁用該傳感器設(shè)備。
[0071]在步驟S102中,當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;
[0072]在本發(fā)明實(shí)施例中,當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻之后,還包括:當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),判斷功耗管理功能是否開啟;如果判斷出功耗管理功能開啟,則執(zhí)行所述遍歷傳感器當(dāng)前活躍連接接口隊(duì)列的步驟??梢岳斫獾氖?,可以提供一界面,在該界面上提供一個(gè)功耗管理功能的開啟接口和一個(gè)關(guān)閉接口,當(dāng)用戶點(diǎn)擊該開啟接口時(shí),便自動(dòng)啟動(dòng)該功耗管理功能,當(dāng)用戶點(diǎn)擊該關(guān)閉接口時(shí),便自動(dòng)關(guān)閉該功耗管理功能。
[0073]其中,所述傳感器當(dāng)前活躍連接接口隊(duì)列mActiveConnect1ns,用來存儲(chǔ)當(dāng)前可用的傳感器連接。當(dāng)enable接口被調(diào)用時(shí),添加新注冊(cè)的連接接口到所述傳感器當(dāng)前活躍連接接口隊(duì)列mActiveConnect1ns中;當(dāng)disable接口被調(diào)用時(shí),將相應(yīng)的連接接口移出所述傳感器當(dāng)前活躍連接接口隊(duì)列mAc t i veConnec t i ons 〇
[0074]優(yōu)選的,為了降低誤判移動(dòng)終端當(dāng)前是否在播放視頻,其實(shí)現(xiàn)如下:當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),進(jìn)一步判斷在預(yù)設(shè)時(shí)間內(nèi)是否退出在播放的視頻;如果判斷出在預(yù)設(shè)時(shí)間內(nèi)沒有退出在播放的視頻,則執(zhí)行所述遍歷傳感器當(dāng)前活躍連接接口隊(duì)列的步驟。
[0075]在步驟S103中,判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;
[0076]其中,功耗管理功能應(yīng)用中保存有一套判斷是否允許應(yīng)用程序在處于視頻播放時(shí)持有傳感器的機(jī)制(即上述提到的過濾條件),例如:可以定義運(yùn)動(dòng)類應(yīng)用、導(dǎo)航類應(yīng)用、系統(tǒng)內(nèi)置應(yīng)用等幾類應(yīng)用允許處于視頻播放時(shí)持有傳感器,除此之外的其他應(yīng)用在處于視頻播放時(shí)禁止持有傳感器。因此,若允許定義的應(yīng)用處于視頻播放時(shí)持有傳感器連接,則在步驟S103中會(huì)過濾掉該定義的應(yīng)用。而沒有在步驟S103中過濾掉的應(yīng)用則需要轉(zhuǎn)向步驟S104中進(jìn)行相應(yīng)的操作。
[0077]然而,可以理解的是,允許處于視頻播放時(shí)持有傳感器的應(yīng)用名單,可以由移動(dòng)終端的安全模塊所生成,也可以由用戶自行選擇,或者是可以由云服務(wù)器進(jìn)行推送等等。
[0078]在本發(fā)明實(shí)施例中,允許處于視頻播放時(shí)持有傳感器的應(yīng)用名單,可以是文件方式存儲(chǔ)在移動(dòng)終端側(cè)、或者可以是以數(shù)據(jù)庫方式存儲(chǔ)在移動(dòng)終端側(cè),或者是基于云服務(wù)器方式存儲(chǔ)。
[0079]對(duì)于文件方式存儲(chǔ)或數(shù)據(jù)庫方式存儲(chǔ)的情況下,移動(dòng)終端在開啟功耗管理功能后,會(huì)從移動(dòng)終端側(cè)調(diào)出該事先保存在移動(dòng)終端的允許處于視頻播放時(shí)持有傳感器的應(yīng)用名單。
[0080]如果是基于云服務(wù)器方式存儲(chǔ),那么移動(dòng)終端在開啟功耗管理功能后,會(huì)觸發(fā)移動(dòng)終端從云服務(wù)器中讀取允許處于視頻播放時(shí)持有傳感器的應(yīng)用名單。
[0081 ]在步驟S104中,如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。
[0082]例如,移動(dòng)終端系統(tǒng)在native層的SensorService系統(tǒng)服務(wù)中,添加釋放與保存?zhèn)鞲衅鬟B接業(yè)務(wù)實(shí)現(xiàn)方法releaseAndSaveSensor。該方法將遍歷當(dāng)前活躍連接接口隊(duì)列mActiveConnect1ns,若一個(gè)連接接口不符合過濾機(jī)制的過濾條件,則調(diào)用disable方法釋放該傳感器連接,將該連接接口移出當(dāng)前活躍連接接口隊(duì)列,同時(shí)將該連接接口保存到待恢復(fù)連接隊(duì)列mSavedConnect1ns,將連接接口對(duì)應(yīng)的傳感器設(shè)置參數(shù)添加到待恢復(fù)參數(shù)隊(duì)列mSavedParams中,用于退出視頻播放時(shí)恢復(fù)傳感器連接。
[0083]在本發(fā)明實(shí)施例中,為了在移動(dòng)終端退出視頻播放時(shí),能夠自動(dòng)恢復(fù)傳感器的連接,其實(shí)現(xiàn)流程如下:
[0084]1、在將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接的步驟之后,將移出所述當(dāng)前活躍連接接口隊(duì)列的連接接口保存至待恢復(fù)連接隊(duì)列;
[0085]2、獲取移出的連接接口對(duì)應(yīng)的傳感器的設(shè)置參數(shù)信息;
[0086]3、將所述傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中。
[0087]4、當(dāng)檢測到移動(dòng)終端退出視頻播放時(shí),遍歷所述待恢復(fù)連接隊(duì)列;
[0088]5、從所述待恢復(fù)參數(shù)隊(duì)列中獲取傳感器的設(shè)置參數(shù)信息;
[0089]6、根據(jù)所述傳感器的設(shè)置參數(shù)信息,將相應(yīng)的連接接口重新添加到所述當(dāng)前活躍連接接口隊(duì)列中,以恢復(fù)相應(yīng)的傳感器連接。
[0090]例如,移動(dòng)終端系統(tǒng)在native層的SensorService系統(tǒng)服務(wù)中,添加恢復(fù)傳感器連接業(yè)務(wù)實(shí)現(xiàn)方法restoreSensor。restoreSensor方法將遍歷待恢復(fù)連接隊(duì)列mSavedConnect1ns,從待恢復(fù)參數(shù)隊(duì)列mSavedParams中獲取對(duì)應(yīng)的傳感器設(shè)置參數(shù),調(diào)用enable方法恢復(fù)相應(yīng)的傳感器連接,同時(shí)將該連接接口重新添加到mActiveConnect1ns當(dāng)前活躍連接接口隊(duì)列。
[0091]實(shí)施例二
[0092]請(qǐng)參閱圖2,所示為本發(fā)明實(shí)施例提供的釋放傳感器連接的實(shí)現(xiàn)流程。
[0093]所述釋放傳感器連接的實(shí)現(xiàn)流程,應(yīng)用于移動(dòng)終端中,具體包括如下步驟:
[0094]在步驟S201中,檢測移動(dòng)終端當(dāng)前是否在播放視頻(即是否進(jìn)入視頻播放);
[0095]在步驟S202中,如果檢測到進(jìn)入視頻播放,則進(jìn)一步判斷功耗管理功能是否開啟;
[0096]在步驟S203中,如果判斷出功耗管理功能開啟,則遍歷mActiveConnect1ns傳感器當(dāng)前活躍連接接口隊(duì)列;
[0097]在步驟S204中,判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;
[0098]其中,功耗管理功能應(yīng)用中保存有一套判斷是否允許應(yīng)用程序在處于視頻播放時(shí)持有傳感器的機(jī)制(即上述提到的過濾條件),例如:可以定義運(yùn)動(dòng)類應(yīng)用、導(dǎo)航類應(yīng)用、系統(tǒng)內(nèi)置應(yīng)用等幾類應(yīng)用允許處于視頻播放時(shí)持有傳感器,除此之外的其他應(yīng)用在處于視頻播放時(shí)禁止持有傳感器。
[0099]在該步驟中,例如,當(dāng)判斷出所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序不屬運(yùn)動(dòng)類應(yīng)用、導(dǎo)航類應(yīng)用、和系統(tǒng)內(nèi)置應(yīng)用,那么可以判定出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,因此,是需要釋放傳感器連接。
[0100]在步驟S205中,如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則調(diào)用di sab I e方法釋放該傳感器連接,將該連接接口移出當(dāng)前活躍連接接口隊(duì)列;
[0101]在步驟S206中,將移出所述當(dāng)前活躍連接接口隊(duì)列的連接接口添加至待恢復(fù)連接隊(duì)列mSavedConnect1ns ;
[0102]在步驟S207中,將傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列mSavedParams中;
[0?03] 在步驟S208中,判斷是否遍歷完mActiveConnect1ns傳感器當(dāng)前活躍連接接口隊(duì)列中的所有連接接口;
[0?04] 在步驟S209中,如果判斷出遍歷完mActiveConnect1ns傳感器當(dāng)前活躍連接接口隊(duì)列中的所有連接接口,則結(jié)束本次操作。如果判斷出沒有遍歷完mActiveConnect1ns傳感器當(dāng)前活躍連接接口隊(duì)列中的所有連接接口,則返回步驟S 2 O 3中執(zhí)行遍歷mActiveConnect1ns傳感器當(dāng)前活躍連接接口隊(duì)列中的下一個(gè)連接接口。
[0105]實(shí)施例三
[0106]請(qǐng)參閱圖3,所示為本發(fā)明實(shí)施例提供的恢復(fù)傳感器連接的實(shí)現(xiàn)流程。
[0107]所述恢復(fù)傳感器連接的實(shí)現(xiàn)流程,應(yīng)用于移動(dòng)終端中,具體包括如下步驟:
[0108]在步驟S301中,手機(jī)自動(dòng)檢測是否退出視頻播放;
[0109]在步驟S302中,當(dāng)檢測到手機(jī)退出視頻播放時(shí),則遍歷所述待恢復(fù)連接隊(duì)列mSavedConnect1ns;[Ο??Ο]在步驟S303中,從所述待恢復(fù)參數(shù)隊(duì)列mSavedParams中獲取傳感器的設(shè)置參數(shù)信息;
[0111]在步驟S304中,調(diào)用enable方法恢復(fù)相應(yīng)的傳感器連接,同時(shí)將該連接接口重新添加到mAc t i veConnec t i ons當(dāng)前活躍連接接口隊(duì)列中;
[0112]在步驟S305中,判斷是否遍歷完所述待恢復(fù)連接隊(duì)列mSavedConnect1ns中的所有連接接口;
[0113]在步驟S306中,如果判斷出遍歷完所述待恢復(fù)連接隊(duì)列mSavedConnect1ns中的所有連接接口,則結(jié)束本次操作。如果判斷出沒有遍歷完所述待恢復(fù)連接隊(duì)列mSavedConnect1ns中的所有連接接口,則返回步驟S302中以執(zhí)行遍歷所述待恢復(fù)連接隊(duì)列mSavedConnect1ns中的下一個(gè)連接接口。
[0114]由上可知,本發(fā)明的移動(dòng)終端的傳感器處理方法,通過檢測移動(dòng)終端當(dāng)前是否在播放視頻;當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。即本發(fā)明在播放視頻時(shí)自動(dòng)釋放符合要求的傳感器連接,退出視頻播放時(shí)恢復(fù)傳感器連接。因此本發(fā)明有效降低移動(dòng)終端的耗電,從而提升了移動(dòng)終端的續(xù)航能力。
[0115]實(shí)施例四
[0116]請(qǐng)一并參閱圖4及圖5,為本發(fā)明實(shí)施例提供的移動(dòng)終端的傳感器處理裝置的模塊示意圖;為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。所述移動(dòng)終端的傳感器處理裝置包括:視頻檢測模塊11、第一遍歷模塊102、過濾判斷模塊103、移出模塊104。所述移動(dòng)終端的傳感器處理裝置可以是內(nèi)置于移動(dòng)終端中的軟件單元、硬件單元或者是軟硬件結(jié)合的單元。
[0117]視頻檢測模塊101,用于檢測移動(dòng)終端當(dāng)前是否在播放視頻;
[0118]檢測移動(dòng)終端當(dāng)前是否在播放視頻的方案,具體包括:檢測移動(dòng)終端當(dāng)前是否持有亮屏鎖以及音頻鎖;如果檢測到移動(dòng)終端當(dāng)前同時(shí)持有亮屏鎖以及音頻鎖,則判定移動(dòng)終端當(dāng)前在播放視頻。
[0119]例如,移動(dòng)終端在進(jìn)行視頻播放時(shí)有兩個(gè)顯著特點(diǎn):要持有亮屏鎖保持屏幕常亮,以及要持有Aud1Mix(音頻)鎖保證聲音播放正常。因此可知,通過這兩個(gè)條件可以準(zhǔn)確識(shí)別視頻播放場景。在PowerManagerService的acquireWakeLocklnternal方法中,判斷應(yīng)用申請(qǐng)鎖的類型是否為SCREEN_BRIGHT_WAKE_L0CK。若為該類型,則判斷該應(yīng)用是否同時(shí)持有Aud1Mix鎖,若該條件滿足,則認(rèn)為該應(yīng)用在播放視頻。
[0120]然而,可以理解的是,并不限于上述判斷方式,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
[0121]第一遍歷模塊102,用于當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;
[0122]過濾判斷模塊103,用于判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;
[0123]其中,功耗管理功能應(yīng)用中保存有一套判斷是否允許應(yīng)用程序在處于視頻播放時(shí)持有傳感器的機(jī)制(即上述提到的過濾條件),例如:可以定義運(yùn)動(dòng)類應(yīng)用、導(dǎo)航類應(yīng)用、系統(tǒng)內(nèi)置應(yīng)用等幾類應(yīng)用允許處于視頻播放時(shí)持有傳感器,除此之外的其他應(yīng)用在處于視頻播放時(shí)禁止持有傳感器。
[0124]移出模塊104,用于如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。
[0125]進(jìn)一步的,所述移動(dòng)終端的傳感器處理裝置,還包括:
[0126]保存模塊105,用于將移出所述當(dāng)前活躍連接接口隊(duì)列的連接接口保存至待恢復(fù)連接隊(duì)列;
[0127]第一參數(shù)獲取模塊106,用于獲取移出的連接接口對(duì)應(yīng)的傳感器的設(shè)置參數(shù)信息;
[0128]參數(shù)添加模塊107,用于將所述傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中。
[0129]進(jìn)一步的,所述移動(dòng)終端的傳感器處理裝置,還包括:
[0130]第二遍歷模塊108,用于當(dāng)檢測到移動(dòng)終端退出視頻播放時(shí),遍歷所述待恢復(fù)連接隊(duì)列;
[0131]第二參數(shù)獲取模塊109,用于從所述待恢復(fù)參數(shù)隊(duì)列中獲取傳感器的設(shè)置參數(shù)信息;
[0132]接口添加模塊110,用于根據(jù)所述傳感器的設(shè)置參數(shù)信息,將相應(yīng)的連接接口重新添加到所述當(dāng)前活躍連接接口隊(duì)列中,以恢復(fù)相應(yīng)的傳感器連接。
[0133]進(jìn)一步的,所述移動(dòng)終端的傳感器處理裝置,還包括:
[0134]時(shí)間判斷模塊111,用于當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),判斷在預(yù)設(shè)時(shí)間內(nèi)是否退出在播放的視頻;
[0135]所述第一遍歷模塊102,具體用于如果判斷出在預(yù)設(shè)時(shí)間內(nèi)沒有退出在播放的視頻,則遍歷傳感器當(dāng)前活躍連接接口隊(duì)列。
[0136]進(jìn)一步的,所述視頻檢測模塊,具體包括:鎖檢測模塊以及判定模塊;
[0137]所述鎖檢測模塊,用于檢測移動(dòng)終端當(dāng)前是否持有亮屏鎖以及音頻鎖;
[0138]判定模塊,用于如果檢測到移動(dòng)終端當(dāng)前同時(shí)持有亮屏鎖以及音頻鎖,則判定移動(dòng)終端當(dāng)前在播放視頻。
[0139]由上可知,本發(fā)明的移動(dòng)終端的傳感器處理裝置,通過檢測移動(dòng)終端當(dāng)前是否在播放視頻;當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。即本發(fā)明在播放視頻時(shí)自動(dòng)釋放符合要求的傳感器連接,退出視頻播放時(shí)恢復(fù)傳感器連接。因此本發(fā)明有效降低移動(dòng)終端的耗電,從而提升了移動(dòng)終端的續(xù)航能力。
[0140]本發(fā)明實(shí)施例還提供了一種移動(dòng)終端,該移動(dòng)終端包括移動(dòng)終端的傳感器處理裝置,上面已詳細(xì)描述移動(dòng)終端的傳感器處理裝置,因此,在這不再詳細(xì)描述。
[0141]本發(fā)明實(shí)施例提供的移動(dòng)終端的傳感器處理方法及裝置屬于同一構(gòu)思,其具體實(shí)現(xiàn)過程詳見說明書全文,此處不再贅述。
[0142]本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)可以包括:只讀存儲(chǔ)器(R0M,Read Only Memory)、隨機(jī)存取記憶體(RAM,RandomAccess Memory)、磁盤或光盤等。
[0143]綜上所述,雖然本發(fā)明已以優(yōu)選實(shí)施例揭露如上,但上述優(yōu)選實(shí)施例并非用以限制本發(fā)明,本領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),均可作各種更動(dòng)與潤飾,因此本發(fā)明的保護(hù)范圍以權(quán)利要求界定的范圍為準(zhǔn)。
【主權(quán)項(xiàng)】
1.一種移動(dòng)終端的傳感器處理方法,其特征在于,所述移動(dòng)終端的傳感器處理方法,包 括以下步驟:檢測移動(dòng)終端當(dāng)前是否在播放視頻;當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接接口隊(duì)列;判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件;其中,所述過濾條件 為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述連接接口移出所 述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。2.如權(quán)利要求1所述的移動(dòng)終端的傳感器處理方法,其特征在于,在將所述連接接口移 出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接的步驟之后,還包 括:將移出所述當(dāng)前活躍連接接口隊(duì)列的連接接口保存至待恢復(fù)連接隊(duì)列;獲取移出的連接接口對(duì)應(yīng)的傳感器的設(shè)置參數(shù)信息;將所述傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中。3.如權(quán)利要求2所述的移動(dòng)終端的傳感器處理方法,其特征在于,在將所述傳感器的設(shè) 置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中的步驟之后,還包括:當(dāng)檢測到移動(dòng)終端退出視頻播放時(shí),遍歷所述待恢復(fù)連接隊(duì)列;從所述待恢復(fù)參數(shù)隊(duì)列中獲取傳感器的設(shè)置參數(shù)信息;根據(jù)所述傳感器的設(shè)置參數(shù)信息,將相應(yīng)的連接接口重新添加到所述當(dāng)前活躍連接接 口隊(duì)列中,以恢復(fù)相應(yīng)的傳感器連接。4.如權(quán)利要求1所述的移動(dòng)終端的傳感器處理方法,其特征在于,所述移動(dòng)終端的傳感 器處理方法,還包括:當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),判斷在預(yù)設(shè)時(shí)間內(nèi)是否退出在播放的視頻; 如果判斷出在預(yù)設(shè)時(shí)間內(nèi)沒有退出在播放的視頻,則執(zhí)行所述遍歷傳感器當(dāng)前活躍連 接接口隊(duì)列的步驟。5.如權(quán)利要求1所述的移動(dòng)終端的傳感器處理方法,其特征在于,所述檢測移動(dòng)終端當(dāng) 前是否在播放視頻的步驟,具體包括:檢測移動(dòng)終端當(dāng)前是否持有亮屏鎖以及音頻鎖;如果檢測到移動(dòng)終端當(dāng)前同時(shí)持有亮屏鎖以及音頻鎖,則判定移動(dòng)終端當(dāng)前在播放視頻。6.—種移動(dòng)終端的傳感器處理裝置,其特征在于,所述移動(dòng)終端的傳感器處理裝置,包 括:視頻檢測模塊,用于檢測移動(dòng)終端當(dāng)前是否在播放視頻;第一遍歷模塊,用于當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),遍歷傳感器當(dāng)前活躍連接 接口隊(duì)列;過濾判斷模塊,用于判斷所述隊(duì)列中的連接接口對(duì)應(yīng)的應(yīng)用程序是否符合過濾條件; 其中,所述過濾條件為:在移動(dòng)終端處于視頻播放時(shí),應(yīng)用程序不釋放傳感器連接;移出模塊,用于如果判斷出所述連接接口對(duì)應(yīng)的應(yīng)用程序不符合過濾條件,則將所述 連接接口移出所述當(dāng)前活躍連接接口隊(duì)列,以釋放所述連接接口對(duì)應(yīng)的傳感器連接。7.如權(quán)利要求6所述的移動(dòng)終端的傳感器處理裝置,其特征在于,所述移動(dòng)終端的傳感 器處理裝置,還包括:保存模塊,用于將移出所述當(dāng)前活躍連接接口隊(duì)列的連接接口保存至待恢復(fù)連接隊(duì) 列;第一參數(shù)獲取模塊,用于獲取移出的連接接口對(duì)應(yīng)的傳感器的設(shè)置參數(shù)信息;參數(shù)添加模塊,用于將所述傳感器的設(shè)置參數(shù)信息添加到待恢復(fù)參數(shù)隊(duì)列中。8.如權(quán)利要求7所述的移動(dòng)終端的傳感器處理裝置,其特征在于,所述移動(dòng)終端的傳感 器處理裝置,還包括:第二遍歷模塊,用于當(dāng)檢測到移動(dòng)終端退出視頻播放時(shí),遍歷所述待恢復(fù)連接隊(duì)列;第二參數(shù)獲取模塊,用于從所述待恢復(fù)參數(shù)隊(duì)列中獲取傳感器的設(shè)置參數(shù)信息;接口添加模塊,用于根據(jù)所述傳感器的設(shè)置參數(shù)信息,將相應(yīng)的連接接口重新添加到 所述當(dāng)前活躍連接接口隊(duì)列中,以恢復(fù)相應(yīng)的傳感器連接。9.如權(quán)利要求6所述的移動(dòng)終端的傳感器處理裝置,其特征在于,所述移動(dòng)終端的傳感 器處理裝置,還包括:時(shí)間判斷模塊,用于當(dāng)檢測到移動(dòng)終端當(dāng)前在播放視頻時(shí),判斷在預(yù)設(shè)時(shí)間內(nèi)是否退 出在播放的視頻;所述第一遍歷模塊,具體用于如果判斷出在預(yù)設(shè)時(shí)間內(nèi)沒有退出在播放的視頻,則遍 歷傳感器當(dāng)前活躍連接接口隊(duì)列。10.如權(quán)利要求6所述的移動(dòng)終端的傳感器處理裝置,其特征在于,所述視頻檢測模塊, 具體包括:鎖檢測模塊以及判定模塊;所述鎖檢測模塊,用于檢測移動(dòng)終端當(dāng)前是否持有亮屏鎖以及音頻鎖;判定模塊,用于如果檢測到移動(dòng)終端當(dāng)前同時(shí)持有亮屏鎖以及音頻鎖,則判定移動(dòng)終 端當(dāng)前在播放視頻。11.一種包括權(quán)利要求6至10任一項(xiàng)所述的移動(dòng)終端的傳感器處理裝置的移動(dòng)終端。
【文檔編號(hào)】H04M1/73GK106055078SQ201610379895
【公開日】2016年10月26日
【申請(qǐng)日】2016年5月31日
【發(fā)明人】王彬
【申請(qǐng)人】廣東歐珀移動(dòng)通信有限公司