一種調(diào)整智能終端喚醒頻率的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及智能終端領(lǐng)域,特別涉及智能終端中針對(duì)定時(shí)喚醒頻率控制,提高手機(jī)續(xù)航能力的方法。
【背景技術(shù)】
[0002]智能終端一般有兩種狀態(tài):休眠狀態(tài)和正常運(yùn)行狀態(tài)。休眠狀態(tài)是智能終端除電源管理以外的其他外圍模塊,比如液晶顯示器(LCD:Liquid Crystal Display)背光,重力感應(yīng)器,觸摸屏及中央處理器(CPU:Central Processing Unit)均不工作,只有內(nèi)存保持自動(dòng)刷新且LCD關(guān)閉的一種低功耗的狀態(tài)。反之正常運(yùn)行狀態(tài)是一種大部分設(shè)備保持運(yùn)行的功耗狀態(tài)。如果用戶在不操作智能終端的情況下讓智能終端一直保持休眠狀態(tài),會(huì)降低智能終端功率損耗,增加智能終端的續(xù)航時(shí)間。
[0003]智能終端喚醒頻率主要指單位時(shí)間內(nèi)智能終端被手動(dòng)或者自身喚醒的次數(shù),手動(dòng)喚醒是指用戶按智能手機(jī)的開機(jī)鍵(即Power鍵)把手機(jī)從休眠狀態(tài)切換到正常運(yùn)行狀態(tài),這種情況是用戶自主的行為,我們不能控制;智能終端的自身喚醒主要指實(shí)時(shí)時(shí)鐘(RTC:Real Time Clock)喚醒或者電信業(yè)務(wù)喚醒,正常的電信業(yè)務(wù)把手機(jī)從休眠狀態(tài)切換到正常運(yùn)行狀態(tài)是最基本的業(yè)務(wù)要求,不能進(jìn)行限制;RTC喚醒是指上層應(yīng)用運(yùn)行的時(shí)候設(shè)置的一些支持喚醒狀態(tài)的定時(shí)器在時(shí)間到了之后,RTC觸發(fā)中斷從而喚醒智能終端。
[0004]RTC喚醒的設(shè)置來自智能終端安裝的軟件或者系統(tǒng)自身正常運(yùn)行時(shí)產(chǎn)生的各種類型的Alarm定時(shí)器,當(dāng)系統(tǒng)在休眠狀態(tài)下時(shí),有些Alarm定時(shí)器時(shí)間到了之后,RTC會(huì)喚醒整個(gè)智能終端系統(tǒng)。所有上層軟件和系統(tǒng)的定時(shí)器設(shè)置和消息通知都需要通過AlarmManager來進(jìn)行管理操作。
[0005]正常情況下智能終端一直處于休眠狀態(tài)下,一晚上8小時(shí)約耗電3%左右;同樣一晚上8小時(shí)如果智能終端單小時(shí)內(nèi)被RTC喚醒10次,會(huì)是一直處理休眠的情況下耗電量的3倍左右,如果RTC喚醒的頻率更高則無(wú)法估計(jì)其帶來的耗電量,甚至很容易超過50%,所以如果可以控制其休眠的RTC喚醒頻率,則對(duì)智能終端續(xù)航能力的提升有很大的意義,也提聞了用戶體驗(yàn)。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的在于提供一種調(diào)整智能終端喚醒頻率的方法及裝置,能夠解決智能終端因規(guī)律性的被RTC喚醒而導(dǎo)致的電量損耗問題。
[0007]根據(jù)本發(fā)明的一個(gè)方面,提供了一種調(diào)整智能終端喚醒頻率的方法,包括:對(duì)智能終端的當(dāng)前運(yùn)行狀態(tài)進(jìn)行檢測(cè),并根據(jù)檢測(cè)結(jié)果對(duì)Alarm定時(shí)器進(jìn)行相應(yīng)的定時(shí)設(shè)置處理;
[0008]若檢測(cè)結(jié)果為智能終端處于正常運(yùn)行狀態(tài),則根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息對(duì)所有的Alarm定時(shí)器進(jìn)行定時(shí)設(shè)置處理,使得至少一部分Alarm定時(shí)器在同一時(shí)間點(diǎn)上進(jìn)行喚醒;
[0009]若檢測(cè)結(jié)果為智能終端處于休眠狀態(tài),則根據(jù)對(duì)應(yīng)于休眠狀態(tài)的定時(shí)器配置信息,對(duì)所有的Alarm定時(shí)器進(jìn)行定時(shí)設(shè)置處理,把至少一部分Alarm定時(shí)器進(jìn)行清除。
[0010]優(yōu)選地,根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器;
[0011]根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的預(yù)置信息數(shù)據(jù)改變所找到的Alarm定時(shí)器的定時(shí)數(shù)據(jù);
[0012]將改變了定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。
[0013]優(yōu)選地,根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器;
[0014]將所找到的不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。
[0015]優(yōu)選地,所述的使得至少一部分Alarm定時(shí)器在同一時(shí)間點(diǎn)上進(jìn)行喚醒是,把至少一部分Alarm定時(shí)器在一段時(shí)間內(nèi)的處理集中在一個(gè)時(shí)間點(diǎn)上進(jìn)行處理。
[0016]優(yōu)選地,根據(jù)對(duì)應(yīng)于休眠狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到需要清除的Alarm定時(shí)器;
[0017]將所找到的需要清除的Alarm定時(shí)器從所述RTC中刪除。
[0018]優(yōu)選地,根據(jù)對(duì)應(yīng)于休眠狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),確定不需要清除的Alarm定時(shí)器;
[0019]在所述RTC中繼續(xù)保持所確定的不需要清除的Alarm定時(shí)器。
[0020]根據(jù)本發(fā)明的另一方面,提供了一種調(diào)整智能終端喚醒頻率的裝置,包括:
[0021]檢測(cè)模塊,用于對(duì)智能終端的當(dāng)前運(yùn)行狀態(tài)進(jìn)行檢測(cè),并根據(jù)檢測(cè)結(jié)果對(duì)Alarm定時(shí)器進(jìn)行相應(yīng)的定時(shí)設(shè)置處理;
[0022]正常運(yùn)行模塊,用于若檢測(cè)結(jié)果為智能終端處于正常運(yùn)行狀態(tài),則根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息對(duì)所有的Alarm定時(shí)器進(jìn)行定時(shí)設(shè)置處理,使得至少一部分Alarm定時(shí)器在同一時(shí)間點(diǎn)上進(jìn)行喚醒;
[0023]休眠模塊,用于若檢測(cè)結(jié)果為智能終端處于休眠狀態(tài),則根據(jù)對(duì)應(yīng)于休眠狀態(tài)的定時(shí)器配置信息,對(duì)所有的Alarm定時(shí)器進(jìn)行定時(shí)設(shè)置處理,把至少一部分Alarm定時(shí)器進(jìn)行清除。
[0024]優(yōu)選地,查找改變定時(shí)數(shù)據(jù)子模塊,用于根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器;
[0025]定時(shí)數(shù)據(jù)設(shè)置子模塊,用于根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的預(yù)置信息數(shù)據(jù)改變所找到的Alarm定時(shí)器的定時(shí)數(shù)據(jù);
[0026]保存改變定時(shí)數(shù)據(jù)子模塊,用于將改變了定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。
[0027]優(yōu)選地,查找不改變定時(shí)數(shù)據(jù)子模塊,用于根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器;
[0028]保存不改變定時(shí)數(shù)據(jù)子模塊,用于將所找到的不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。
[0029]優(yōu)選地,查找清除定時(shí)器子模塊,用于根據(jù)對(duì)應(yīng)于休眠狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到需要清除的Alarm定時(shí)器;
[0030]定時(shí)器清除子模塊,用于將所找到的需要清除的Alarm定時(shí)器從所述RTC中刪除。
[0031]與現(xiàn)有技術(shù)相比較,本發(fā)明的有益效果在于:在智能終端現(xiàn)有的設(shè)備上,通過用戶設(shè)置控制RTC喚醒頻率的方法,減少智能終端的功率損耗,實(shí)現(xiàn)了增加智能終端的續(xù)航時(shí)間,既兼顧了降低功耗,也提升了用戶體驗(yàn)。
【附圖說明】
[0032]圖1是本發(fā)明實(shí)施例提供的調(diào)整智能終端喚醒頻率的方法流程圖;
[0033]圖2是本發(fā)明實(shí)施例提供的調(diào)整智能終端喚醒頻率的裝置結(jié)構(gòu)圖;
[0034]圖3是本發(fā)明實(shí)施例提供的調(diào)整智能終端喚醒頻率的運(yùn)行原理圖;
[0035]圖4是本發(fā)明實(shí)施例提供的調(diào)整智能終端喚醒頻率的系統(tǒng)正常運(yùn)行時(shí)Alarm定時(shí)控制智能終端喚醒頻率的處理流程圖;
[0036]圖5是本發(fā)明實(shí)施例提供的調(diào)整智能終端喚醒頻率的系統(tǒng)進(jìn)入休眠時(shí)Alarm定時(shí)控制智能終端喚醒頻率的處理流程圖。
【具體實(shí)施方式】
[0037]以下結(jié)合附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行詳細(xì)說明,應(yīng)當(dāng)理解,以下所說明的優(yōu)選實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
[0038]圖1是本發(fā)明實(shí)施例提供的調(diào)整智能終端喚醒頻率的方法流程圖,如圖1所示,具體步驟如下:
[0039]步驟S1:對(duì)智能終端的當(dāng)前運(yùn)行狀態(tài)進(jìn)行檢測(cè),并根據(jù)檢測(cè)結(jié)果對(duì)Alarm定時(shí)器進(jìn)行相應(yīng)的定時(shí)設(shè)置處理;
[0040]步驟S2:若檢測(cè)結(jié)果為智能終端處于正常運(yùn)行狀態(tài),則根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息對(duì)所有的Alarm定時(shí)器進(jìn)行定時(shí)設(shè)置處理,使得至少一部分Alarm定時(shí)器在同一時(shí)間點(diǎn)上進(jìn)行喚醒;
[0041]所述步驟S2中:根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器;
[0042]根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的預(yù)置信息數(shù)據(jù)改變所找到的Alarm定時(shí)器的定時(shí)數(shù)據(jù);
[0043]將改變了定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。
[0044]根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器;
[0045]將所找到的不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。
[0046]進(jìn)一步地,所述的使得至少一部分Alarm定時(shí)器在同一時(shí)間點(diǎn)上進(jìn)行喚醒是,把至少一部分Alarm定時(shí)器在一段時(shí)間內(nèi)的處理集中在一個(gè)時(shí)間點(diǎn)上進(jìn)行處理。
[0047]步驟S3:若檢測(cè)結(jié)果為智能終端處于休眠狀態(tài),則根據(jù)對(duì)應(yīng)于休眠狀態(tài)的定時(shí)器配置信息,對(duì)所有的Alarm定時(shí)器進(jìn)行定時(shí)設(shè)置處理,把至少一部分Alarm定時(shí)器進(jìn)行清除。
[0048]所述步驟S3中:根據(jù)對(duì)應(yīng)于休眠狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到需要清除的Alarm定時(shí)器;
[0049]將所找到的需要清除的Alarm定時(shí)器從所述RTC中刪除。
[0050]圖2是本發(fā)明實(shí)施例提供的調(diào)整智能終端喚醒頻率的裝置結(jié)構(gòu)圖,如圖2所示,包括:上層系統(tǒng)模塊、Alarm Manager (Alarm管理器)模塊、App (即Applicat1n)列表設(shè)置模塊和RTC模塊。
[0051]Alarm Manager模塊用于設(shè)置所有上層應(yīng)用或系統(tǒng)設(shè)置的Alarm定時(shí)器,同時(shí)動(dòng)態(tài)監(jiān)聽來自RTC模塊的中斷信號(hào)并上報(bào)給對(duì)應(yīng)的定時(shí)源。
[0052]所述Alarm Manager模塊包括檢測(cè)模塊、正常運(yùn)行模塊和休眠模塊。
[0053]檢測(cè)模塊用于對(duì)智能終端的當(dāng)前運(yùn)行狀態(tài)進(jìn)行檢測(cè),并根據(jù)檢測(cè)結(jié)果對(duì)Alarm定時(shí)器進(jìn)行相應(yīng)的定時(shí)設(shè)置處理。
[0054]正常運(yùn)行模塊用于若檢測(cè)結(jié)果為智能終端處于正常運(yùn)行狀態(tài),則根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息對(duì)所有的Alarm定時(shí)器進(jìn)行定時(shí)設(shè)置處理,使得至少一部分Alarm定時(shí)器在同一時(shí)間點(diǎn)上進(jìn)行喚醒。所述正常運(yùn)行模塊的查找改變定時(shí)數(shù)據(jù)子模塊用于根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器。所述正常運(yùn)行模塊的定時(shí)數(shù)據(jù)設(shè)置子模塊用于根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的預(yù)置信息數(shù)據(jù)改變所找到的Alarm定時(shí)器的定時(shí)數(shù)據(jù)。所述正常運(yùn)行模塊的保存改變定時(shí)數(shù)據(jù)子模塊用于將改變了定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。同時(shí),所述正常運(yùn)行模塊的查找不改變定時(shí)數(shù)據(jù)子模塊用于根據(jù)對(duì)應(yīng)于正常運(yùn)行狀態(tài)的定時(shí)器配置信息中的Alarm定時(shí)器標(biāo)識(shí),找到不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器。所述正常運(yùn)行模塊的保存不改變定時(shí)數(shù)據(jù)子模塊用于將所找到的不需要改變定時(shí)數(shù)據(jù)的Alarm定時(shí)器設(shè)置到RTC中。