欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

結(jié)束應(yīng)用程序的方法及裝置與流程

文檔序號(hào):11590037閱讀:235來源:國知局

本發(fā)明涉及計(jì)算機(jī)和通信技術(shù)領(lǐng)域,特別涉及一種結(jié)束應(yīng)用程序的方法及裝置。



背景技術(shù):

隨著智能終端技術(shù)的不斷發(fā)展,智能終端可以安裝越來越多的應(yīng)用程序,但是用戶在使用這些應(yīng)用程序的過程中,即使用戶退出了當(dāng)前應(yīng)用程序,如果用戶沒有進(jìn)入設(shè)置殺死該應(yīng)用程序,該應(yīng)用程序依然會(huì)繼續(xù)在后臺(tái)運(yùn)行,因此經(jīng)常導(dǎo)致應(yīng)用程序關(guān)閉不及時(shí),使一些并沒有執(zhí)行任何操作的應(yīng)用程序也運(yùn)行在智能終端中,從而導(dǎo)致縮短智能終端續(xù)航時(shí)間,浪費(fèi)系統(tǒng)資源智能終端的問題。

為了解決上述問題,目前引入了如下方法:在智能終端鎖屏后,獲取智能終端后臺(tái)運(yùn)行的每一個(gè)應(yīng)用程序,從該應(yīng)用程序中獲取黑名單中包括的應(yīng)用程序,然后結(jié)束該黑名單中包括的應(yīng)用程序。黑名單是用戶事先設(shè)置的,在該黑名單中記載了智能終端鎖屏后要結(jié)束的應(yīng)用程序。

在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:

結(jié)束操作是根據(jù)黑名單進(jìn)行,很有可結(jié)束了黑名單中正在執(zhí)行任務(wù)的應(yīng)用程序,結(jié)束應(yīng)用程序不夠嚴(yán)謹(jǐn)。



技術(shù)實(shí)現(xiàn)要素:

為了解決現(xiàn)有技術(shù)的問題,本發(fā)明實(shí)施例提供了一種結(jié)束應(yīng)用程序的方法及裝置。所述技術(shù)方案如下:

根據(jù)本公開實(shí)施例的第一方面,本公開第一方面提供了結(jié)束應(yīng)用程序的方法,所述方法包括:

在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源;

根據(jù)所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前所述第一應(yīng)用程序是否在執(zhí)行任務(wù);

如果判斷出當(dāng)前所述第一應(yīng)用程序未執(zhí)行任務(wù),則結(jié)束所述第一應(yīng)用程序在所述終端的后臺(tái)繼續(xù)運(yùn)行。

根據(jù)本公開實(shí)施例的第二方面,本公開第二方面提供了結(jié)束應(yīng)用程序的裝置,所述裝置包括:

確定模塊,用于在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源;

判斷模塊,用于根據(jù)所述確定模塊確定的所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前所述第一應(yīng)用程序是否在執(zhí)行任務(wù);

結(jié)束模塊,用于如果所述判斷模塊判斷出當(dāng)前所述第一應(yīng)用程序未執(zhí)行任務(wù),則結(jié)束所述第一應(yīng)用程序在所述終端的后臺(tái)繼續(xù)運(yùn)行。

本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:

由于該結(jié)束應(yīng)用程序的方法是在終端內(nèi)應(yīng)用程序進(jìn)入后臺(tái)后就可以執(zhí)行,也即該結(jié)束應(yīng)用程序的方法可以在用戶使用終端的任意時(shí)刻進(jìn)行,解決了不能在使用終端時(shí)及時(shí)結(jié)束沒有執(zhí)行任何任務(wù)的應(yīng)用程序的問題,達(dá)到了提高結(jié)束應(yīng)用程序及時(shí)性的效果;而且該結(jié)束應(yīng)用程序的方法是在該應(yīng)用程序沒有執(zhí)行任何任務(wù)時(shí)才結(jié)束,解決了結(jié)束應(yīng)用程序不嚴(yán)謹(jǐn)?shù)膯栴},提高了結(jié)束應(yīng)用程序的精確性的效果。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本公開應(yīng)用的網(wǎng)絡(luò)架構(gòu)圖;

圖2是本發(fā)明一個(gè)實(shí)施例提供的一種結(jié)束應(yīng)用程序的方法流程圖;

圖3a是本發(fā)明再一個(gè)實(shí)施例提供的一種結(jié)束應(yīng)用程序的方法流程圖;

圖3b是本發(fā)明再一個(gè)實(shí)施例提供的一種確定第一應(yīng)用程序執(zhí)行任務(wù)時(shí)所調(diào)用的各api的方法流程圖;

圖3c是本發(fā)明再一個(gè)實(shí)施例提供的一種檢測(cè)第一應(yīng)用程序當(dāng)前是否提供了可交互的用戶界面ui的方法流程圖;

圖4a是本發(fā)明一個(gè)實(shí)施例提供的一種結(jié)束應(yīng)用程序的裝置結(jié)構(gòu)示意圖;

圖4b是本發(fā)明另一個(gè)實(shí)施例提供的一種確定該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源的裝置的結(jié)構(gòu)示意圖;

圖4c是本發(fā)明另一個(gè)實(shí)施例提供的一種確定該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源的裝置的結(jié)構(gòu)示意圖;

圖4d是本發(fā)明另一個(gè)實(shí)施例提供的一種判斷當(dāng)前該第一應(yīng)用程序是否在執(zhí)行任務(wù)的裝置的結(jié)構(gòu)示意圖;

圖4e是本發(fā)明一個(gè)實(shí)施例提供的一種結(jié)束應(yīng)用程序的裝置結(jié)構(gòu)示意圖;

圖4f是本發(fā)明一個(gè)實(shí)施例提供的一種確定第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源的裝置的結(jié)構(gòu)示意圖;

圖5是本發(fā)明一個(gè)實(shí)施例提供的結(jié)束應(yīng)用程序電子設(shè)備的結(jié)構(gòu)示意圖。

具體實(shí)施方式

為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。文中所講的“電子設(shè)備”可以包括智能手機(jī)、平板電腦、智能電視、電子書閱讀器、mp3播放器(movingpictureexpertsgroupaudiolayeriii,動(dòng)態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面3)、mp4(movingpictureexpertsgroupaudiolayeriv,動(dòng)態(tài)影像專家壓縮標(biāo)準(zhǔn)音頻層面4)播放器、膝上型便攜計(jì)算機(jī)和臺(tái)式計(jì)算機(jī)等等。

圖1是本發(fā)明實(shí)施例應(yīng)用的網(wǎng)絡(luò)架構(gòu)圖,參見圖1,該網(wǎng)絡(luò)架構(gòu)可以包括但不限于至少一個(gè)服務(wù)器120和終端140。

該服務(wù)器120,用于統(tǒng)計(jì)并保存應(yīng)用程序與應(yīng)用類型的對(duì)應(yīng)關(guān)系,應(yīng)用程序與第一關(guān)閉時(shí)間的對(duì)應(yīng)關(guān)系,有關(guān)第一關(guān)閉時(shí)間在下述實(shí)施例中具體介紹。

該終端140可以安裝并運(yùn)行應(yīng)用程序,該終端140安裝系統(tǒng),可以為應(yīng)用程序提供系統(tǒng)資源,該應(yīng)用程序可以通過調(diào)用該系統(tǒng)資源執(zhí)行任務(wù)。該系統(tǒng)資源可以為應(yīng)用程序編程接口api。

該終端140可以存儲(chǔ)并保存數(shù)據(jù),并通過有線或是無線網(wǎng)絡(luò)從該服務(wù)器120 下載數(shù)據(jù)資源。比如,可以存儲(chǔ)應(yīng)用類型與功能的對(duì)應(yīng)關(guān)系等。

該服務(wù)器120與該終端140可通過有線或是無線網(wǎng)絡(luò)連接。

圖2是本發(fā)明一個(gè)實(shí)施例提供的一種結(jié)束應(yīng)用程序的方法的方法流程圖,參見圖2,該方法包括但不限于:

在步驟201中,在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源。

在步驟202中,根據(jù)該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前該第一應(yīng)用程序是否在執(zhí)行任務(wù)。

在步驟203中,如果判斷出當(dāng)前該第一應(yīng)用程序未執(zhí)行任務(wù),則結(jié)束該第一應(yīng)用程序在該終端的后臺(tái)繼續(xù)運(yùn)行。

綜上所述,本實(shí)施例提供的結(jié)束應(yīng)用程序的方法,在終端內(nèi)應(yīng)用程序由前臺(tái)切換到后臺(tái)時(shí),獲取該應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,根據(jù)該執(zhí)行任務(wù)時(shí)需要的調(diào)用的系統(tǒng)資源判斷該應(yīng)用程序是否在執(zhí)行任務(wù),如果該應(yīng)用程序沒有執(zhí)行任何任務(wù)則結(jié)束該應(yīng)用程序;由于該結(jié)束應(yīng)用程序的方法是在終端內(nèi)應(yīng)用程序進(jìn)入后臺(tái)后就可以執(zhí)行,也即該結(jié)束應(yīng)用程序的方法可以在用戶使用終端的任意時(shí)刻進(jìn)行,解決了不能在使用終端時(shí)及時(shí)結(jié)束沒有執(zhí)行任何任務(wù)的應(yīng)用程序的問題,達(dá)到了提高結(jié)束應(yīng)用程序及時(shí)性的效果;而且該結(jié)束應(yīng)用程序的方法是在該應(yīng)用程序沒有執(zhí)行任何任務(wù)時(shí)才結(jié)束,解決了結(jié)束應(yīng)用程序不嚴(yán)謹(jǐn)?shù)膯栴},提高了結(jié)束應(yīng)用程序的精確性的效果。

圖3a是本發(fā)明再一個(gè)實(shí)施例提供的一種結(jié)束應(yīng)用程序的方法的方法流程圖,該方法在終端內(nèi)應(yīng)用程序由前臺(tái)切換到后臺(tái)時(shí),確定該應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,根據(jù)該執(zhí)行任務(wù)時(shí)需要的調(diào)用的系統(tǒng)資源判斷該應(yīng)用程序是否在執(zhí)行任務(wù),如果該應(yīng)用程序沒有執(zhí)行任何任務(wù)則結(jié)束該應(yīng)用程序。在本實(shí)施例中該系統(tǒng)資源可以為api。參見圖3a,該方法包括但不限于:

在步驟301中,實(shí)時(shí)檢測(cè)第一應(yīng)用程序在終端內(nèi)的運(yùn)行狀態(tài)。

該第一應(yīng)用程序指終端內(nèi)前臺(tái)和后臺(tái)運(yùn)行的應(yīng)用程序。

該運(yùn)行狀態(tài)可包括前臺(tái)運(yùn)行和后臺(tái)運(yùn)行。

可選的,在本實(shí)施例中可以通過檢測(cè)該第一應(yīng)用程序的界面狀態(tài)來判斷該 第一應(yīng)用程序的運(yùn)行狀態(tài)。具體的,當(dāng)該第一應(yīng)用程序的界面中存在至少一個(gè)界面在前臺(tái)運(yùn)行,則確定該第一應(yīng)用程序的運(yùn)行狀態(tài)為前臺(tái)運(yùn)行狀態(tài);當(dāng)檢測(cè)到該第一應(yīng)用程序的所有的界面在后臺(tái)運(yùn)行,則確定該第一應(yīng)用程序的運(yùn)行狀態(tài)為后臺(tái)運(yùn)行狀態(tài)。

可選的,該界面可以是activity、圖標(biāo)或其它界面。

可選的,在本實(shí)施例中可以使用注入技術(shù)檢測(cè)該第一應(yīng)用程序的界面在終端內(nèi)的運(yùn)行狀態(tài)。例如,當(dāng)該界面為activity時(shí),具體過程可包括但不限于如下方法檢測(cè)該activity的運(yùn)行狀態(tài):編寫activity狀態(tài)監(jiān)控代碼,將該activity狀態(tài)監(jiān)控代碼注入到系統(tǒng)服務(wù)進(jìn)程中,該系統(tǒng)服務(wù)進(jìn)程可管理終端內(nèi)所有的activity的運(yùn)行狀態(tài),使得在運(yùn)行該系統(tǒng)服務(wù)進(jìn)程時(shí),運(yùn)行該監(jiān)控代碼,當(dāng)該activity棧頂?shù)腶ctivity發(fā)生變化時(shí)通知終端。例如,如果當(dāng)前棧頂?shù)腶ctivity是該第一應(yīng)用程序的activity,則當(dāng)監(jiān)控到棧頂?shù)腶ctivity發(fā)生變化時(shí),則通知終端該第一應(yīng)用程序的activity從棧頂出棧,然后繼續(xù)監(jiān)控當(dāng)前棧頂?shù)腶ctivity狀態(tài)。

通過注入技術(shù)監(jiān)控activity棧頂?shù)臓顟B(tài)變化,可以在activity狀態(tài)發(fā)生變化時(shí)獲得回調(diào),而不需要通過循環(huán)遍歷activity棧頂來獲取當(dāng)前棧頂?shù)腶ctivity,大大減少了系統(tǒng)資源占用。

對(duì)于實(shí)時(shí)檢測(cè)該第一應(yīng)用程序在終端內(nèi)的運(yùn)行狀態(tài),上述檢測(cè)方法僅用于舉例,本實(shí)施例中的檢測(cè)方法并有限制于該方法。

在步驟302中,在檢測(cè)出該第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),將該第一應(yīng)用程序的程序標(biāo)識(shí)從緩存隊(duì)列的隊(duì)尾入隊(duì)。

該緩存隊(duì)列為先進(jìn)行先出緩存隊(duì)列,用于存儲(chǔ)小于或等于預(yù)設(shè)閾值個(gè)從終端前臺(tái)切換到后臺(tái)的應(yīng)用程序的程序標(biāo)識(shí),具體如下:當(dāng)檢測(cè)出有應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),該應(yīng)用程序?qū)?yīng)的程序標(biāo)識(shí)都從該緩存隊(duì)列的隊(duì)尾入隊(duì),存儲(chǔ)在該緩存隊(duì)列中;以及當(dāng)該緩存隊(duì)列中存儲(chǔ)的程序標(biāo)識(shí)的數(shù)量大于預(yù)設(shè)的閾值時(shí),則將該緩存隊(duì)列的隊(duì)頭存儲(chǔ)的程序標(biāo)識(shí)出隊(duì),直到該緩存隊(duì)列包括的程序標(biāo)識(shí)數(shù)目不超過預(yù)設(shè)數(shù)值時(shí)為止。因此,使用該先進(jìn)先出緩存隊(duì)列可以使在該緩存隊(duì)列存儲(chǔ)的程序標(biāo)識(shí)數(shù)量大于預(yù)設(shè)的閾值時(shí),可以優(yōu)先處理先進(jìn)入該緩存隊(duì)列的程序標(biāo)識(shí)。

進(jìn)一步的,該第一應(yīng)用程序的程序標(biāo)識(shí)從緩存隊(duì)列的隊(duì)尾入隊(duì)以后,當(dāng)檢 測(cè)出該第一應(yīng)用程序從該終端的后臺(tái)切換到前臺(tái)時(shí),如果該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)位于緩該存隊(duì)列,將該第一應(yīng)用程序的程序標(biāo)識(shí)從該緩存隊(duì)列中刪除。因?yàn)楫?dāng)該第一應(yīng)用程序從該終端的后臺(tái)切換到前臺(tái)時(shí),說明該應(yīng)用程序需要去執(zhí)行任務(wù),從而將程序標(biāo)識(shí)從該緩存隊(duì)列中刪除,不進(jìn)行后續(xù)有關(guān)判斷是否結(jié)束該應(yīng)用程序的操作,將該程序標(biāo)識(shí)從該緩存隊(duì)列中刪除,不僅符合實(shí)際情況,還減少了后續(xù)有關(guān)判斷,提高系統(tǒng)資源使用率。

在步驟303中,在該第一應(yīng)用程序的程序標(biāo)識(shí)入隊(duì)后,如果該緩存隊(duì)列包括的應(yīng)用標(biāo)識(shí)數(shù)目超過預(yù)設(shè)數(shù)值,則從該緩存隊(duì)列的隊(duì)頭出隊(duì)該緩存隊(duì)列包括的程序標(biāo)識(shí),直到該緩存隊(duì)列包括的程序標(biāo)識(shí)數(shù)目不超過預(yù)設(shè)數(shù)值時(shí)為止。

本步驟可以為:當(dāng)該第一應(yīng)用程序入隊(duì)后,獲取當(dāng)前該緩存隊(duì)列中包括的程序標(biāo)識(shí)的數(shù)量,將該程序標(biāo)識(shí)的數(shù)量與預(yù)設(shè)數(shù)值進(jìn)行比較,如果當(dāng)前該程序標(biāo)識(shí)的數(shù)量大于該預(yù)設(shè)數(shù)值時(shí),使該緩存隊(duì)列中的程序標(biāo)識(shí)從該緩存隊(duì)列的隊(duì)頭出隊(duì),直到該緩存隊(duì)列包括的程序標(biāo)識(shí)數(shù)目不超過預(yù)設(shè)數(shù)值時(shí)為止。

例如,該預(yù)設(shè)數(shù)值為3,當(dāng)該第一應(yīng)用程序入隊(duì)后,獲取到的當(dāng)前該緩存隊(duì)列中包括的程序標(biāo)識(shí)的數(shù)量為4,因此緩存隊(duì)列中包括的程序標(biāo)識(shí)的數(shù)量大于預(yù)設(shè)數(shù)值,所以從該緩存隊(duì)列的隊(duì)頭出隊(duì)1個(gè)程序標(biāo)識(shí),使得該緩存隊(duì)列包括的程序標(biāo)識(shí)數(shù)目為3。

通過使用上述先進(jìn)先出緩存隊(duì)列不僅可以優(yōu)先處理先進(jìn)入該緩存隊(duì)列的程序標(biāo)識(shí),還可以使該緩存隊(duì)列中包括的程序標(biāo)識(shí)的數(shù)量始終小于或等于預(yù)設(shè)閾值。由于距當(dāng)前時(shí)間最近入隊(duì)的預(yù)設(shè)閾值個(gè)程序標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用程序,是距當(dāng)前最近時(shí)間從前臺(tái)切換到后臺(tái)的應(yīng)用程序,所以該預(yù)設(shè)閾值個(gè)應(yīng)用程序很可能是被頻繁切換到前臺(tái)使用,因此不對(duì)該最近從前臺(tái)切換到后臺(tái)的應(yīng)用程序進(jìn)行后續(xù)有關(guān)判斷是否結(jié)束該應(yīng)用程序的操作,不僅符合實(shí)際情況,還減少了后續(xù)有關(guān)判斷,提高系統(tǒng)資源使用率。

在步驟304中,當(dāng)該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)從該緩存隊(duì)列的隊(duì)頭出隊(duì)時(shí),確定該第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間,并將該第一應(yīng)用程序的程序標(biāo)識(shí)和該第一關(guān)閉時(shí)間的對(duì)應(yīng)關(guān)系存儲(chǔ)在等待列表中。

該第一關(guān)閉時(shí)間在當(dāng)前時(shí)間之后,具體為從該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)從該緩存隊(duì)列的隊(duì)頭出隊(duì)到需要開始判斷是否結(jié)束該第一應(yīng)用程序?yàn)橹?,?duì)于判斷是否結(jié)束該第一應(yīng)用程序在后面步驟中具體介紹。

可選的,該第一關(guān)閉時(shí)間可以通過如下方法得到:針對(duì)每一個(gè)應(yīng)用程序,服務(wù)器統(tǒng)計(jì)大量用戶從該應(yīng)用程序進(jìn)入后臺(tái)運(yùn)行到關(guān)閉該應(yīng)用程序之間的平均時(shí)間長度,將該平均時(shí)間長度確定為該應(yīng)用程序的第一等待時(shí)長,并將該應(yīng)用程序的程序標(biāo)識(shí)和該第一等待時(shí)長存儲(chǔ)在程序標(biāo)識(shí)與第一關(guān)閉時(shí)間的對(duì)應(yīng)關(guān)系表中。終端從服務(wù)器獲取該程序標(biāo)識(shí)與第一等待時(shí)長的對(duì)應(yīng)關(guān)系表,并保存在本地,當(dāng)需要確定該第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間時(shí),首先獲取該第一應(yīng)用程序的程序標(biāo)識(shí),將該獲取到的第一程序標(biāo)識(shí)與該對(duì)應(yīng)關(guān)系表中的程序標(biāo)識(shí)進(jìn)行比對(duì),查詢出與該獲取到的第一程序標(biāo)識(shí)相同的程序標(biāo)識(shí),從該對(duì)應(yīng)關(guān)系表中獲取查詢的程序標(biāo)識(shí)對(duì)應(yīng)的第一等待時(shí)長,將該第一等待時(shí)長與當(dāng)前時(shí)間相加得到該第一應(yīng)用程序的第一關(guān)閉時(shí)間。

該等待列表中存儲(chǔ)了從該緩存隊(duì)列中出隊(duì)的程序標(biāo)識(shí),且該程序標(biāo)識(shí)對(duì)應(yīng)的第一關(guān)閉時(shí)間還沒有到達(dá)。

可選的,在該等待列表中按照各程序標(biāo)識(shí)對(duì)應(yīng)的第一關(guān)閉時(shí)間的先后對(duì)各程序標(biāo)識(shí)進(jìn)行排序。

需要說明的是,將該第一應(yīng)用程序的程序標(biāo)識(shí)和該第一關(guān)閉時(shí)間的對(duì)應(yīng)關(guān)系存儲(chǔ)在等待列表中以后,如果當(dāng)檢測(cè)出該第一應(yīng)用程序從該終端的后臺(tái)切換到前臺(tái)時(shí),如果該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)位于等待列表,將該第一應(yīng)用程序的程序標(biāo)識(shí)和該第一關(guān)閉時(shí)間從所等待列表中刪除。因?yàn)楫?dāng)該第一應(yīng)用程序從該終端的后臺(tái)切換到前臺(tái)時(shí),說明該應(yīng)用程序需要去執(zhí)行任務(wù),因此停止后續(xù)有關(guān)判斷是否結(jié)束該應(yīng)用程序的操作,將該程序標(biāo)識(shí)從該等待列表中刪除,不僅符合實(shí)際情況,還減少了后續(xù)有關(guān)判斷,提高系統(tǒng)資源使用率。

在步驟305中,對(duì)該等待列表存儲(chǔ)的關(guān)閉時(shí)間進(jìn)行實(shí)時(shí)檢測(cè),如果檢測(cè)出該第一關(guān)閉時(shí)間到達(dá)時(shí),從該等待列表中獲取該第一關(guān)閉時(shí)間對(duì)應(yīng)的該第一應(yīng)用程序的程序標(biāo)識(shí)。

本步驟可以為:將將該第一應(yīng)用程序的程序標(biāo)識(shí)和該第一關(guān)閉時(shí)間的對(duì)應(yīng)關(guān)系存儲(chǔ)在等待列表中后,實(shí)時(shí)檢測(cè)各第一關(guān)閉時(shí)間,當(dāng)檢測(cè)出該第一關(guān)閉時(shí)間到達(dá)時(shí),從該等待列表中獲取該第一關(guān)閉時(shí)間對(duì)應(yīng)的該第一應(yīng)用程序的程序標(biāo)識(shí)。

在步驟306中,根據(jù)該第一應(yīng)用程序的程序標(biāo)識(shí),確定該第一應(yīng)用程序執(zhí)行任務(wù)時(shí)所調(diào)用的各api。

可選的,參見圖3b,可通過如下方法確定該第一應(yīng)用程序執(zhí)行任務(wù)時(shí)所調(diào)用的各api,如圖3b所示,該包括但不限于:

在步驟3061中,根據(jù)該第一應(yīng)用程序的程序標(biāo)識(shí),從程序標(biāo)識(shí)與應(yīng)用類型的對(duì)應(yīng)關(guān)系中獲取該第一應(yīng)用程序的應(yīng)用類型。

該程序標(biāo)識(shí)與應(yīng)用類型的對(duì)應(yīng)關(guān)系可以通過如下方法獲得:該程序標(biāo)識(shí)與應(yīng)用類型的對(duì)應(yīng)關(guān)系是由服務(wù)器統(tǒng)計(jì)得到,服務(wù)器根據(jù)每一個(gè)應(yīng)用程序的功能為該每一個(gè)應(yīng)用程序設(shè)置應(yīng)用類型,例如,qq聊天工具設(shè)置為社交類型,qq音樂設(shè)置為播放類型等,并將該應(yīng)用程序的程序標(biāo)識(shí)與該應(yīng)用類型的對(duì)應(yīng)關(guān)系存儲(chǔ)在第一對(duì)應(yīng)關(guān)系表中;終端從服務(wù)器獲取該第一對(duì)應(yīng)關(guān)系表,并保存在本地,以便在需要時(shí)可以及時(shí)從本地獲取。

本步驟可以為:當(dāng)獲取到該第一應(yīng)用程序的程序標(biāo)識(shí)時(shí),將該第一應(yīng)用程序的程序標(biāo)識(shí)與該第一對(duì)應(yīng)關(guān)系表中的每一個(gè)程序標(biāo)識(shí)進(jìn)行比對(duì),獲取與該第一應(yīng)用程序的程序標(biāo)識(shí)相同的程序標(biāo)識(shí),從該第一對(duì)應(yīng)關(guān)系表中查詢與該獲取的程序標(biāo)識(shí)對(duì)應(yīng)的應(yīng)用類型,將該查詢的應(yīng)用類型確定為該第一應(yīng)用程序?qū)?yīng)的應(yīng)用類型。

在步驟3062中,根據(jù)該應(yīng)用類型,從應(yīng)用類型與功能的對(duì)應(yīng)關(guān)系中確定該第一應(yīng)用程序包括的各功能。

該應(yīng)用類型與功能的對(duì)應(yīng)關(guān)系存儲(chǔ)在第二對(duì)應(yīng)關(guān)系表中,該第二對(duì)應(yīng)關(guān)系表可以通過但不限于如下方法得到:獲取第一類型應(yīng)用程序包括的第一個(gè)應(yīng)用程序,分析該第一個(gè)應(yīng)用程序的功能,記錄分析得到該第一個(gè)應(yīng)用程序的功能,然后獲取第一類型應(yīng)用程序包括的第二個(gè)應(yīng)用程序,分析該第二個(gè)應(yīng)用程序的功能,記錄分析得到該第二個(gè)應(yīng)用程序的功能,然后再獲取第一類型應(yīng)用程序包括的第三個(gè)應(yīng)用程序,分析該第三個(gè)應(yīng)用程序的功能,記錄分析得到該第三個(gè)應(yīng)用程序的功能,直到分析完所有的第一類型應(yīng)用程序包括的每個(gè)應(yīng)用程序,并將分析得到的每個(gè)應(yīng)用程序的功能取并集,將該并集內(nèi)的所有的功能作為該第一類型應(yīng)用程序的第一功能,將該第一類型應(yīng)用程序與該第一功能的對(duì)應(yīng)關(guān)系存儲(chǔ)在該第二對(duì)應(yīng)關(guān)系表中。按照如上方法,將第二類型應(yīng)用程序與第二功能的對(duì)應(yīng)關(guān)系存儲(chǔ)在該第二對(duì)應(yīng)關(guān)系表中,將第三類型應(yīng)用程序與第三功能的對(duì)應(yīng)關(guān)系存儲(chǔ)在該第二對(duì)應(yīng)關(guān)系表中,直到將存儲(chǔ)完所有類型的應(yīng)用程序與功能的對(duì)應(yīng)關(guān)系。

本步驟可以為:將從步驟3062中獲取得到的應(yīng)用類型與該第二對(duì)應(yīng)關(guān)系表中的每一個(gè)應(yīng)用類型進(jìn)行比對(duì),從該第二對(duì)應(yīng)關(guān)系表中確定與步驟3062中獲取得到的應(yīng)用類型相同的應(yīng)用類型,從該第二對(duì)應(yīng)關(guān)系表中查詢?cè)摣@取到的應(yīng)用類型對(duì)應(yīng)的功能,將該查詢到的功能確定該第一應(yīng)用程序包括的各功能。

在步驟3063中,根據(jù)該第一應(yīng)用程序包括的各功能,從功能與api的對(duì)應(yīng)關(guān)系中獲取該第一應(yīng)用程序執(zhí)行該各功能所要調(diào)用的各api。

應(yīng)用程序每執(zhí)行一個(gè)功能都需要調(diào)用一個(gè)api,將該功能與api的對(duì)應(yīng)關(guān)系存儲(chǔ)在第三對(duì)應(yīng)關(guān)系表中。

獲取該第一應(yīng)用程序的第一功能,將該第一功能與該第三對(duì)應(yīng)關(guān)系中的每一個(gè)功能做比較,得到與該第一功能相同的功能,將該功能對(duì)應(yīng)的api確定為該第一應(yīng)用程序執(zhí)行該第一功能所要調(diào)用的api;獲取該第一應(yīng)用程序的第二功能,將該第二功能與該第三對(duì)應(yīng)關(guān)系中的每一個(gè)功能做比較,得到與該第二功能相同的功能,將該功能對(duì)應(yīng)的api確定為該第一應(yīng)用程序執(zhí)行該第二功能所要調(diào)用的api;獲取該第一應(yīng)用程序的第三功能,將該第三功能與該第三對(duì)應(yīng)關(guān)系中的每一個(gè)功能做比較,得到與該第三功能相同的功能,將該功能對(duì)應(yīng)的api確定為該第一應(yīng)用程序執(zhí)行該第三功能所要調(diào)用的api,直到獲取完該第一應(yīng)用程序的所有功能對(duì)應(yīng)的api為止。

在步驟307中,根據(jù)該各api判斷當(dāng)前該第一應(yīng)用程序是否在執(zhí)行任務(wù)。

本步驟可以為:判斷當(dāng)前第一應(yīng)用程序是否在調(diào)用或運(yùn)行確定的各api中的一個(gè)或多個(gè),當(dāng)判斷出當(dāng)前第一應(yīng)用程序正在調(diào)用或運(yùn)行該各api中的一個(gè)或多個(gè),則確定當(dāng)前該第一應(yīng)用程序在執(zhí)行任務(wù);當(dāng)判斷出當(dāng)前該第一應(yīng)用程序沒有調(diào)用或運(yùn)行各api中任何一個(gè),則確定當(dāng)前該第一應(yīng)用程序沒有執(zhí)行任務(wù)。

如果判斷出當(dāng)前該第一應(yīng)用程序正在執(zhí)行任務(wù),則執(zhí)行步驟308;如果判斷出當(dāng)前該第一應(yīng)用程序沒有執(zhí)行任何任務(wù),則執(zhí)行步驟310的操作。

在步驟308中,如果判斷出當(dāng)前該第一應(yīng)用程序正在執(zhí)行任務(wù),則確定該第一應(yīng)用程序的第二關(guān)閉時(shí)間。

如果判斷出當(dāng)前該第一應(yīng)用程序正在執(zhí)行任務(wù),由于該第一應(yīng)用程序正在執(zhí)行任務(wù),所以不能結(jié)束該第一應(yīng)用程序,需要為該第一應(yīng)用程序重新設(shè)置關(guān)閉時(shí)間,以等待再次判斷是否結(jié)束該第一應(yīng)用程序,該再次設(shè)置的關(guān)閉時(shí)間即 為該第二關(guān)閉時(shí)間。

該第二關(guān)閉時(shí)間在該第一關(guān)閉時(shí)間之后,該第二關(guān)閉時(shí)間可以通過如下方法得到:為該第一應(yīng)用程序設(shè)置第二等待時(shí)長,將該第二等待時(shí)長與第一關(guān)閉時(shí)間相加,得到第二關(guān)閉時(shí)間。該第二等待時(shí)長可以設(shè)置為任意數(shù)值,但是一般情況下,該第二等待時(shí)長小于該第一等待時(shí)長,可根據(jù)經(jīng)驗(yàn)將該第二等待時(shí)長設(shè)置為3分鐘或4分鐘,在此不做限制。

在為該第一應(yīng)用程序確定了第二關(guān)閉時(shí)間后,將該第一應(yīng)用程序?qū)?yīng)的應(yīng)用程序標(biāo)識(shí)再次存儲(chǔ)在上述等待列表中,以等待該第二關(guān)閉時(shí)間到達(dá)。

在步驟309中,在該第二關(guān)閉時(shí)間到達(dá)時(shí),執(zhí)行根據(jù)該各api判斷當(dāng)前該第一應(yīng)用程序是否在執(zhí)行任務(wù)。

本步驟可以為:當(dāng)該第二關(guān)閉時(shí)間到達(dá)時(shí),再次執(zhí)行步驟307的操作,以判斷當(dāng)前該第一應(yīng)用程序是否在執(zhí)行任務(wù),當(dāng)判斷出當(dāng)前該第一應(yīng)用程序正在執(zhí)行任務(wù)時(shí),則再次為該第一應(yīng)用程序確定該第二關(guān)閉時(shí)間。重復(fù)上述過程直到判斷出當(dāng)前該第一應(yīng)用程序未執(zhí)行任務(wù)時(shí),執(zhí)行步驟310的操作。

在步驟310中,如果判斷出當(dāng)前該第一應(yīng)用程序未執(zhí)行任務(wù),則檢測(cè)該第一應(yīng)用程序當(dāng)前是否提供了可交互的ui。

可選的,參見圖3c,可以通過如下方法檢測(cè)該第一應(yīng)用程序當(dāng)前是否提供了可交互的ui,如圖3c所示該檢測(cè)方法包括但不限于:

在步驟3101中,判斷該第一應(yīng)用程序是否處于前臺(tái)運(yùn)行。

該第一應(yīng)用程序的運(yùn)行狀態(tài)可以為前臺(tái)運(yùn)行,后臺(tái)運(yùn)行和關(guān)閉。當(dāng)該第一應(yīng)用程序的運(yùn)行狀態(tài)為前臺(tái)運(yùn)行時(shí),則說明該第一應(yīng)用程序正在執(zhí)行任務(wù),此時(shí)該第一應(yīng)用程序會(huì)提供一個(gè)可交互的ui與用戶交互,則確定該第一應(yīng)用程序當(dāng)前提供了可交互的ui。

可選的,可通過如下方法判斷該第一應(yīng)用程序是否處于前臺(tái)運(yùn)行:獲取系統(tǒng)activity棧內(nèi)棧頂?shù)腶ctivity,根據(jù)該棧頂?shù)腶ctivity判斷該第一應(yīng)用程序是否在前臺(tái)運(yùn)行。在activity棧內(nèi)管理了應(yīng)用程序內(nèi)所有的activity,activity棧頂?shù)腶ctivity是當(dāng)前正在前臺(tái)運(yùn)行的activity,獲取該activity棧頂?shù)腶ctivity,如果該activity是該運(yùn)行在該第一應(yīng)用程序內(nèi)的activity,則確定該第一應(yīng)用程序是在前臺(tái)運(yùn)行。說明該應(yīng)用程序正在執(zhí)行任務(wù),所以不結(jié)束該應(yīng)用程序。

其中,activity與上述activity含義相同,在這里不做贅述。

如果在本步驟中判斷出該第一應(yīng)用程序當(dāng)前處于前臺(tái)運(yùn)行,則執(zhí)行步驟311,如果判斷出該第一應(yīng)用程序當(dāng)前沒有處于前臺(tái)運(yùn)行,則執(zhí)行步驟3102。

在步驟3102中,判斷該第一應(yīng)用程序的程序標(biāo)識(shí)是否在通知欄列表內(nèi)。

終端通知欄列表內(nèi)存儲(chǔ)了終端內(nèi)正在后臺(tái)運(yùn)行的部分的應(yīng)用程序,該應(yīng)用程序有可能正在執(zhí)行任務(wù),而且用戶還可以通過該通知欄內(nèi)顯示的ui界面,對(duì)應(yīng)用程序進(jìn)行操作,完成用戶交互。所以當(dāng)檢測(cè)到該通知欄列表內(nèi)包括該第一應(yīng)用程序的程序標(biāo)識(shí)時(shí),則說明該第一應(yīng)用程序正在執(zhí)行任務(wù)或很可能在很短的時(shí)間內(nèi)開始執(zhí)行任務(wù)。所以不結(jié)束該應(yīng)用程序。

如果在本步驟中判斷出該第一應(yīng)用程序的程序標(biāo)識(shí)在通知欄列表內(nèi),則執(zhí)行步驟311,如果判斷出該第一應(yīng)用程序的程序標(biāo)識(shí)沒有在通知欄列表內(nèi),則執(zhí)行步驟3103。

在步驟3103中,判斷該第一應(yīng)用程序的程序標(biāo)識(shí)在進(jìn)程優(yōu)先級(jí)列表的級(jí)別是否處于預(yù)設(shè)的優(yōu)先級(jí)別內(nèi)。

該進(jìn)程優(yōu)先級(jí)列表內(nèi)保存了該終端內(nèi)進(jìn)程的優(yōu)先級(jí)別,該進(jìn)程優(yōu)先級(jí)別可根據(jù)終端內(nèi)進(jìn)程的運(yùn)行狀態(tài)進(jìn)行動(dòng)態(tài)調(diào)整。一般情況下,進(jìn)程優(yōu)先級(jí)別按照如下順序依次降低:前臺(tái)運(yùn)行的進(jìn)程,可視進(jìn)程,次要服務(wù)進(jìn)程,后臺(tái)進(jìn)程,內(nèi)容供應(yīng)節(jié)點(diǎn)進(jìn)程,空進(jìn)程。其中,前臺(tái)運(yùn)行的進(jìn)程是正在執(zhí)行任務(wù)的進(jìn)程,可視進(jìn)程是很可能在很短時(shí)間內(nèi)開始執(zhí)行任務(wù)的進(jìn)程。

所以可以通過獲取進(jìn)程優(yōu)先級(jí)列表的內(nèi)容,如果該第一應(yīng)用程序內(nèi)的進(jìn)程有至少一個(gè)為前臺(tái)進(jìn)程或可視進(jìn)程時(shí),則認(rèn)為該第一應(yīng)用程序當(dāng)前提供了可交互的ui,不結(jié)束該第一應(yīng)用程序。

有關(guān)上述前臺(tái)進(jìn)程,可視進(jìn)程,次要服務(wù)進(jìn)程,后臺(tái)進(jìn)程,內(nèi)容供應(yīng)節(jié)點(diǎn)進(jìn)程,空進(jìn)程的含義均為現(xiàn)有技術(shù)在此不做闡述。

如果在本步驟中判斷出該第一應(yīng)用程序的程序標(biāo)識(shí)在進(jìn)程優(yōu)先級(jí)列表的級(jí)別是否處于預(yù)設(shè)的優(yōu)先級(jí)別內(nèi),則執(zhí)行步驟311,如果判斷出該第一應(yīng)用程序的程序標(biāo)識(shí)在進(jìn)程優(yōu)先級(jí)列表的級(jí)別沒有處于預(yù)設(shè)的優(yōu)先級(jí)別內(nèi),則執(zhí)行步驟312。

在步驟311中,檢測(cè)出該第一應(yīng)用程序當(dāng)前提供了可交互的ui,則確定該應(yīng)用程序的第二關(guān)閉時(shí)間。

如果在步驟310中檢測(cè)出該第一應(yīng)用程序當(dāng)前提供了可交互的ui,則說明 該第一應(yīng)用程序正在執(zhí)行任務(wù)或在很短的時(shí)間內(nèi)開始執(zhí)行任務(wù),所以不能結(jié)束該第一應(yīng)用程序,需要為該第一應(yīng)用程序重新設(shè)置關(guān)閉時(shí)間,以等待再次判斷是否結(jié)束該第一應(yīng)用程序,該再次設(shè)置的關(guān)閉時(shí)間即為該第二關(guān)閉時(shí)間。

該第二關(guān)閉時(shí)間在該第一關(guān)閉時(shí)間之后,該第二關(guān)閉時(shí)間可以設(shè)置為任意數(shù)值,一般情況下可根據(jù)經(jīng)驗(yàn)進(jìn)行設(shè)置,可設(shè)置為3分鐘或4分鐘,在此不做限制。

在為該第一應(yīng)用程序確定了第二關(guān)閉時(shí)間后,將該第一應(yīng)用程序?qū)?yīng)的應(yīng)用程序標(biāo)識(shí)再次存儲(chǔ)在上述等待列表中,并再次為該第一程序標(biāo)識(shí)計(jì)時(shí),以等待該第二關(guān)閉時(shí)間到達(dá)。當(dāng)該第二關(guān)閉時(shí)間到達(dá)時(shí),執(zhí)行步驟309的操作。

在步驟312中,如果檢測(cè)該第一應(yīng)用程序當(dāng)前沒有提供了可交互的ui,則結(jié)束該第一應(yīng)用程序在該終端的后臺(tái)繼續(xù)運(yùn)行。

結(jié)束該第一應(yīng)用程序指將該第一應(yīng)用程序關(guān)閉,并注銷該應(yīng)用程序在系統(tǒng)中注冊(cè)的廣播和鬧鐘,禁止該應(yīng)用程序自啟動(dòng)。

由于只有當(dāng)在步驟307中判斷出當(dāng)前該第一應(yīng)用程序沒有執(zhí)行任何任務(wù)時(shí)才執(zhí)行步驟310中的檢測(cè)該第一應(yīng)用程序當(dāng)前是否提供了可交互的ui,所以當(dāng)在該步驟310中檢測(cè)出該第一應(yīng)用程序當(dāng)前提供了可交互的ui,則說明該第一應(yīng)用程序即沒有正在執(zhí)行任務(wù)也不會(huì)在很短時(shí)間內(nèi)開始執(zhí)行任務(wù),所以結(jié)束該第一應(yīng)用程序在該終端的后臺(tái)繼續(xù)運(yùn)行。

需要說明的是,上述判斷是否結(jié)束該第一應(yīng)用程序的方法可以在用戶使用該終端的任意時(shí)刻進(jìn)行;如果該終端鎖屏了,可通過如下方法對(duì)該終端進(jìn)行結(jié)束操作:當(dāng)終端鎖屏后,開始計(jì)時(shí),當(dāng)該終端的鎖屏?xí)r間達(dá)到預(yù)設(shè)的鎖屏?xí)r間時(shí),將上述緩存隊(duì)列中的程序標(biāo)識(shí)逐個(gè)出隊(duì),然后執(zhí)行上述步驟304的操作。

可選的,本實(shí)施例可以應(yīng)用在安裝安卓系統(tǒng)的手機(jī)內(nèi),因?yàn)樵谠撌謾C(jī)內(nèi)運(yùn)行的應(yīng)用程序,當(dāng)應(yīng)用程序的運(yùn)行狀態(tài)從前臺(tái)進(jìn)入后臺(tái)后,手機(jī)并不會(huì)結(jié)束應(yīng)用程序,只有當(dāng)手機(jī)內(nèi)存不足時(shí),才會(huì)結(jié)束運(yùn)行在后臺(tái)的應(yīng)用程序,這樣導(dǎo)致手機(jī)后臺(tái)會(huì)運(yùn)行并沒有執(zhí)行任務(wù)的應(yīng)用程序,該應(yīng)用程序會(huì)占用系統(tǒng)資源,消耗手機(jī)能源;因此通過本實(shí)施例提供的方法結(jié)束后臺(tái)內(nèi)沒有執(zhí)行任務(wù)的應(yīng)用程序,以減少系統(tǒng)資源占用,減少手機(jī)能源消耗。

綜上所述,本實(shí)施例提供的結(jié)束應(yīng)用程序的方法,在終端內(nèi)應(yīng)用程序由前臺(tái)切換到后臺(tái)時(shí),獲取該應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,根據(jù)該 執(zhí)行任務(wù)時(shí)需要的調(diào)用的系統(tǒng)資源判斷該應(yīng)用程序是否在執(zhí)行任務(wù),如果該應(yīng)用程序沒有執(zhí)行任何任務(wù)則結(jié)束該應(yīng)用程序;由于該結(jié)束應(yīng)用程序的方法是在終端內(nèi)應(yīng)用程序進(jìn)入后臺(tái)后就可以執(zhí)行,也即該結(jié)束應(yīng)用程序的方法可以在用戶使用終端的任意時(shí)刻進(jìn)行,解決了不能在使用終端時(shí)及時(shí)結(jié)束沒有執(zhí)行任何任務(wù)的應(yīng)用程序的問題,達(dá)到了提高結(jié)束應(yīng)用程序及時(shí)性的效果;而且該結(jié)束應(yīng)用程序的方法是在該應(yīng)用程序沒有執(zhí)行任何任務(wù)時(shí)才結(jié)束,解決了結(jié)束應(yīng)用程序不嚴(yán)謹(jǐn)?shù)膯栴},提高了結(jié)束應(yīng)用程序的精確性的效果。

下述為本發(fā)明裝置實(shí)施例,可以用于執(zhí)行本發(fā)明方法實(shí)施例。對(duì)于本發(fā)明裝置實(shí)施例中未披露的細(xì)節(jié),請(qǐng)參照本發(fā)明方法實(shí)施例。

圖4a本發(fā)明一個(gè)實(shí)施例提供的一種結(jié)束應(yīng)用程序的裝置的框圖,參見圖4a,該裝置包括但不限于:確定模塊401、判斷模塊402和結(jié)束模塊403。

確定模塊401,用于在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源。

判斷模塊402,用于根據(jù)該確定模塊401確定的該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前該第一應(yīng)用程序是否在執(zhí)行任務(wù)。

結(jié)束模塊403,用于如果該判斷模塊402判斷出當(dāng)前該第一應(yīng)用程序未執(zhí)行任務(wù),則結(jié)束該第一應(yīng)用程序在該終端的后臺(tái)繼續(xù)運(yùn)行。

可選的,參見圖4b,該確定模塊401包括:第一確定子模塊4011和第二確定子模塊4012。

第一確定子模塊4011,用于在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定該第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間,該第一關(guān)閉時(shí)間在當(dāng)前時(shí)間之后。

第二確定子模塊4012,用于在該第一確定子模塊4011確定的該第一關(guān)閉時(shí)間到達(dá)時(shí),確定該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源。

可選的,該系統(tǒng)資源包括應(yīng)用程序編程接口api,參見圖4c,該確定模塊401還包括:第一獲取子模塊4013、第三確定子模塊4014和第二獲取子模塊4015。

第一獲取子模塊4013,用于根據(jù)該第一應(yīng)用程序的程序標(biāo)識(shí),從程序標(biāo)識(shí)與應(yīng)用類型的對(duì)應(yīng)關(guān)系中獲取該第一應(yīng)用程序的應(yīng)用類型。

第三確定子模塊4014,用于根據(jù)該第一獲取子模塊4013獲取的該應(yīng)用類型,從應(yīng)用類型與功能的對(duì)應(yīng)關(guān)系中確定該第一應(yīng)用程序包括的各功能。

第二獲取子模塊4015,用于根據(jù)該第三確定子模塊4014確定的該第一應(yīng)用程序包括的各功能,從功能與api的對(duì)應(yīng)關(guān)系中獲取該第一應(yīng)用程序執(zhí)行該各功能所要調(diào)用的各api。

可選的,該系統(tǒng)資源包括api,參見圖4d,該判斷模塊402包括:第一判斷子模塊4021和第二判斷子模塊4022。

第一判斷子模塊4021,用于根據(jù)該第二獲取子模塊4015獲取的該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的api,判斷當(dāng)前該第一應(yīng)用程序是否調(diào)用或運(yùn)行該api。

第二判斷子模塊4022,用于如果該第一子判斷模塊4021判斷出當(dāng)前該第一應(yīng)用程序調(diào)用或運(yùn)行該api,則判斷出當(dāng)前該第一應(yīng)用程序在執(zhí)行任務(wù)。

可選的,參見圖4e,該裝置還包括:

檢測(cè)模塊404,用于檢測(cè)該第一應(yīng)用程序當(dāng)前是否提供了可交互的ui,如果沒有提供,則執(zhí)行該結(jié)束該第一應(yīng)用程序在該終端的后臺(tái)繼續(xù)運(yùn)行的操作。

可選的,仍舊參見圖4e,該裝置還包括:

確定判斷模塊405,用于如果該判斷模塊402或該檢測(cè)結(jié)束模塊404判斷出當(dāng)前該第一應(yīng)用程序正在執(zhí)行任務(wù)或者檢測(cè)出該第一應(yīng)用程序當(dāng)前供了可交互的ui,則確定該第一應(yīng)用程序的第二關(guān)閉時(shí)間,該第二關(guān)閉時(shí)間在該第一關(guān)閉時(shí)間之后;在該第二關(guān)閉時(shí)間到達(dá)時(shí),執(zhí)行該根據(jù)該第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前該第一應(yīng)用程序是否在執(zhí)行任務(wù)的操作。

可選的,仍舊參見圖4e,該裝置還包括:入隊(duì)模塊406和出隊(duì)模塊407。

入隊(duì)模塊406,用于在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),將該第一應(yīng)用程序的程序標(biāo)識(shí)從緩存隊(duì)列的隊(duì)尾入隊(duì)。

出隊(duì)模塊407,用于在入隊(duì)后如果該緩存隊(duì)列包括的應(yīng)用標(biāo)識(shí)數(shù)目超過預(yù)設(shè)數(shù)值,則從該緩存隊(duì)列的隊(duì)頭出隊(duì)該緩存隊(duì)列包括的程序標(biāo)識(shí),直到該緩存隊(duì)列包括的程序標(biāo)識(shí)數(shù)目不超過預(yù)設(shè)數(shù)值時(shí)為止。

該第一確定子模塊4011,還用于當(dāng)該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)從該緩存隊(duì)列的隊(duì)頭出隊(duì)時(shí),確定該第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間。

可選的,仍舊參見圖4e,該裝置還包括:

存儲(chǔ)模塊408,用于當(dāng)該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)從該緩存隊(duì)列的隊(duì)頭出隊(duì)時(shí),將該第一應(yīng)用程序的程序標(biāo)識(shí)和該第一關(guān)閉時(shí)間的對(duì)應(yīng)關(guān)系存儲(chǔ)在等待列表中。

參見圖4f,該第二確定子模塊4012,包括:檢測(cè)獲取單元4012a和確定單元4012b。

檢測(cè)獲取單元4012a,用于對(duì)該等待列表存儲(chǔ)的關(guān)閉時(shí)間進(jìn)行實(shí)時(shí)檢測(cè),如果檢測(cè)出該第一關(guān)閉時(shí)間到達(dá)時(shí),從該等待列表中獲取該第一關(guān)閉時(shí)間對(duì)應(yīng)的該第一應(yīng)用程序的程序標(biāo)。

確定單元4012b,用于根據(jù)該檢測(cè)獲取單元獲4012a取得到的該第一應(yīng)用程序的程序標(biāo)識(shí),確定該第一應(yīng)用程序執(zhí)行任務(wù)時(shí)所調(diào)用的系統(tǒng)資源。

可選的,仍舊參見圖4e,該裝置還包括:

刪除模塊409,用于當(dāng)檢測(cè)出該第一應(yīng)用程序從該終端的后臺(tái)切換到前臺(tái)時(shí),如果該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)位于該緩存隊(duì)列,將該第一應(yīng)用程序的程序標(biāo)識(shí)從該緩存隊(duì)列中刪除;如果該第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)位于等待列表,將該第一應(yīng)用程序的程序標(biāo)識(shí)和該第一關(guān)閉時(shí)間從所等待列表中刪除。

可選的,本實(shí)施例可以應(yīng)用在安裝安卓系統(tǒng)的手機(jī)內(nèi),因?yàn)樵谠撌謾C(jī)內(nèi)運(yùn)行的應(yīng)用程序,當(dāng)應(yīng)用程序的運(yùn)行狀態(tài)從前臺(tái)進(jìn)入后臺(tái)后,手機(jī)并不會(huì)結(jié)束應(yīng)用程序,只有當(dāng)手機(jī)內(nèi)存不足時(shí),才會(huì)結(jié)束運(yùn)行在后臺(tái)的應(yīng)用程序,這樣導(dǎo)致手機(jī)后臺(tái)會(huì)運(yùn)行并沒有執(zhí)行任務(wù)的應(yīng)用程序,該應(yīng)用程序會(huì)占用系統(tǒng)資源,消耗手機(jī)能源;因此通過本實(shí)施例提供的裝置結(jié)束后臺(tái)內(nèi)沒有執(zhí)行任務(wù)的應(yīng)用程序,以減少系統(tǒng)資源占用,減少手機(jī)能源消耗。

綜上所述,本實(shí)施例提供的結(jié)束應(yīng)用程序的裝置,在終端內(nèi)應(yīng)用程序由前臺(tái)切換到后臺(tái)時(shí),獲取該應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,根據(jù)該執(zhí)行任務(wù)時(shí)需要的調(diào)用的系統(tǒng)資源判斷該應(yīng)用程序是否在執(zhí)行任務(wù),如果該應(yīng)用程序沒有執(zhí)行任何任務(wù)則結(jié)束該應(yīng)用程序;由于該結(jié)束應(yīng)用程序的裝置是在終端內(nèi)應(yīng)用程序進(jìn)入后臺(tái)后就可以開始執(zhí)行任務(wù),也即該結(jié)束應(yīng)用程序的裝置可以在用戶使用終端的任意時(shí)刻進(jìn)行,解決了不能在使用終端時(shí)及時(shí)結(jié)束沒有執(zhí)行任何任務(wù)的應(yīng)用程序的問題,達(dá)到了提高結(jié)束應(yīng)用程序及時(shí)性的效果;而且該結(jié)束應(yīng)用程序的裝置是在該應(yīng)用程序沒有執(zhí)行任何任務(wù)時(shí)才結(jié)束該應(yīng)用程序,解決了結(jié)束應(yīng)用程序不嚴(yán)謹(jǐn)?shù)膯栴},提高了結(jié)束應(yīng)用程序的精確性的效果。

需要說明的是:上述實(shí)施例提供的結(jié)束應(yīng)用程序的裝置和終端在提供結(jié)束應(yīng)用程序的時(shí),僅以上述各功能模塊的劃分進(jìn)行舉例說明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將設(shè)備的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實(shí)施例提供的結(jié)束應(yīng)用程序的裝置盒終端與結(jié)束應(yīng)用程序的方法的方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過程詳見方法實(shí)施例,這里不再贅述。

請(qǐng)參考圖5,其示出了本發(fā)明一個(gè)實(shí)施例提供的結(jié)束應(yīng)用程序的電子設(shè)備的結(jié)構(gòu)示意圖。該電子設(shè)備用于實(shí)施上述實(shí)施例中提供的結(jié)束應(yīng)用程序的方法。具體來講:

電子設(shè)備500可以包括rf(radiofrequency,射頻)電路510、包括有一個(gè)或一個(gè)以上計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的存儲(chǔ)器520、輸入單元530、顯示單元540、傳感器550、音頻電路560、wifi(wirelessfidelity,無線保真)模塊570、包括有一個(gè)或者一個(gè)以上處理核心的處理器580、以及電源590等部件。本領(lǐng)域技術(shù)人員可以理解,圖5中示出的電子設(shè)備結(jié)構(gòu)并不構(gòu)成對(duì)電子設(shè)備的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:

rf電路510可用于收發(fā)信息或通話過程中,信號(hào)的接收和發(fā)送,特別地,將基站的下行信息接收后,交由一個(gè)或者一個(gè)以上處理器580處理;另外,將涉及上行的數(shù)據(jù)發(fā)送給基站。通常,rf電路510包括但不限于天線、至少一個(gè)放大器、調(diào)諧器、一個(gè)或多個(gè)振蕩器、用戶身份模塊(sim)卡、收發(fā)信機(jī)、耦合器、lna(lownoiseamplifier,低噪聲放大器)、雙工器等。此外,rf電路510還可以通過無線通信與網(wǎng)絡(luò)和其他設(shè)備通信。所述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于gsm(globalsystemofmobilecommunication,全球移動(dòng)通訊系統(tǒng))、gprs(generalpacketradioservice,通用分組無線服務(wù))、cdma(codedivisionmultipleaccess,碼分多址)、wcdma(widebandcodedivisionmultipleaccess,寬帶碼分多址)、lte(longtermevolution,長期演進(jìn))、電子郵件、sms(shortmessagingservice,短消息服務(wù))等。

存儲(chǔ)器520可用于存儲(chǔ)軟件程序以及模塊,處理器580通過運(yùn)行存儲(chǔ)在存儲(chǔ)器520的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理。存儲(chǔ)器 520可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)電子設(shè)備500的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲(chǔ)器520可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。相應(yīng)地,存儲(chǔ)器520還可以包括存儲(chǔ)器控制器,以提供處理器580和輸入單元530對(duì)存儲(chǔ)器520的訪問。

輸入單元530可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與用戶設(shè)置以及功能控制有關(guān)的鍵盤、鼠標(biāo)、操作桿、光學(xué)或者軌跡球信號(hào)輸入。具體地,輸入單元530可包括圖像輸入設(shè)備531以及其他輸入設(shè)備532。圖像輸入設(shè)備531可以是攝像頭,也可以是光電掃描設(shè)備。除了圖像輸入設(shè)備531,輸入單元530還可以包括其他輸入設(shè)備532。具體地,其他輸入設(shè)備532可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。

顯示單元540可用于顯示由用戶輸入的信息或提供給用戶的信息以及電子設(shè)備500的各種圖形用戶接口,這些圖形用戶接口可以由圖形、文本、圖標(biāo)、視頻和其任意組合來構(gòu)成。顯示單元540可包括顯示面板541,可選的,可以采用lcd(liquidcrystaldisplay,液晶顯示器)、oled(organiclight-emittingdiode,有機(jī)發(fā)光二極管)等形式來配置顯示面板541。

電子設(shè)備500還可包括至少一種傳感器550,比如光傳感器、運(yùn)動(dòng)傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板541的亮度,接近傳感器可在電子設(shè)備500移動(dòng)到耳邊時(shí),關(guān)閉顯示面板541和/或背光。作為運(yùn)動(dòng)傳感器的一種,重力加速度傳感器可檢測(cè)各個(gè)方向上(一般為三軸)加速度的大小,靜止時(shí)可檢測(cè)出重力的大小及方向,可用于識(shí)別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計(jì)姿態(tài)校準(zhǔn))、振動(dòng)識(shí)別相關(guān)功能(比如計(jì)步器、敲擊)等;至于電子設(shè)備500還可配置的陀螺儀、氣壓計(jì)、濕度計(jì)、溫度計(jì)、紅外線傳感器等其他傳感器,在此不再贅述。

音頻電路560、揚(yáng)聲器561,傳聲器562可提供用戶與電子設(shè)備500之間的音頻接口。音頻電路560可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號(hào),傳輸?shù)綋P(yáng)聲 器561,由揚(yáng)聲器561轉(zhuǎn)換為聲音信號(hào)輸出;另一方面,傳聲器562將收集的聲音信號(hào)轉(zhuǎn)換為電信號(hào),由音頻電路560接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器580處理后,經(jīng)rf電路510以發(fā)送給比如另一電子設(shè)備,或者將音頻數(shù)據(jù)輸出至存儲(chǔ)器520以便進(jìn)一步處理。音頻電路560還可能包括耳塞插孔,以提供外設(shè)耳機(jī)與電子設(shè)備500的通信。

wifi屬于短距離無線傳輸技術(shù),電子設(shè)備500通過wifi模塊570可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁和訪問流式媒體等,它為用戶提供了無線的寬帶互聯(lián)網(wǎng)訪問。雖然圖5示出了wifi模塊570,但是可以理解的是,其并不屬于電子設(shè)備500的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。

處理器580是電子設(shè)備500的控制中心,利用各種接口和線路連接整個(gè)手機(jī)的各個(gè)部分,通過運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)器520內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)器520內(nèi)的數(shù)據(jù),執(zhí)行電子設(shè)備500的各種功能和處理數(shù)據(jù),從而對(duì)手機(jī)進(jìn)行整體監(jiān)控。可選的,處理器580可包括一個(gè)或多個(gè)處理核心;優(yōu)選的,處理器580可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信。可以理解的是,上述調(diào)制解調(diào)處理器也可以不集成到處理器580中。

電子設(shè)備500還包括給各個(gè)部件供電的電源590(比如電池),優(yōu)選的,電源可以通過電源管理系統(tǒng)與處理器580邏輯相連,從而通過電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。電源590還可以包括一個(gè)或一個(gè)以上的直流或交流電源、再充電系統(tǒng)、電源故障檢測(cè)電路、電源轉(zhuǎn)換器或者逆變器、電源狀態(tài)指示器等任意組件。

盡管未示出,電子設(shè)備500還可以包括藍(lán)牙模塊等,在此不再贅述。

具體在本實(shí)施例中,電子設(shè)備500還包括有存儲(chǔ)器,以及一個(gè)或者一個(gè)以上的程序,其中一個(gè)或者一個(gè)以上程序存儲(chǔ)于存儲(chǔ)器中,且經(jīng)配置以由一個(gè)或者一個(gè)以上處理器執(zhí)行。上述一個(gè)或者一個(gè)以上程序包含用于進(jìn)行以下操作的指令:

在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源;

根據(jù)所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前所述 第一應(yīng)用程序是否在執(zhí)行任務(wù);

如果判斷出當(dāng)前所述第一應(yīng)用程序未執(zhí)行任務(wù),則結(jié)束所述第一應(yīng)用程序在所述終端的后臺(tái)繼續(xù)運(yùn)行。

假設(shè)上述為第一種可能的實(shí)施方式,則在第一種可能的實(shí)施方式作為基礎(chǔ)而提供的第二種可能的實(shí)施方式中,所述電子設(shè)備500的存儲(chǔ)器中,還包含用于執(zhí)行以下操作的指令:

所述在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,包括:

在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),確定所述第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間,所述第一關(guān)閉時(shí)間在當(dāng)前時(shí)間之后;

在所述第一關(guān)閉時(shí)間到達(dá)時(shí),確定所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源。

在第一種可能的實(shí)施方式作為基礎(chǔ)而提供的第三種可能的實(shí)施方式中,所述電子設(shè)備500的存儲(chǔ)器中,還包含用于執(zhí)行以下操作的指令:

所述系統(tǒng)資源包括api,所述確定所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,包括:

根據(jù)所述第一應(yīng)用程序的程序標(biāo)識(shí),從程序標(biāo)識(shí)與應(yīng)用類型的對(duì)應(yīng)關(guān)系中獲取所述第一應(yīng)用程序的應(yīng)用類型;

根據(jù)所述應(yīng)用類型,從應(yīng)用類型與功能的對(duì)應(yīng)關(guān)系中確定所述第一應(yīng)用程序包括的各功能;

根據(jù)所述第一應(yīng)用程序包括的各功能,從功能與api的對(duì)應(yīng)關(guān)系中獲取所述第一應(yīng)用程序執(zhí)行所述各功能所要調(diào)用的各api。

在第一種可能的實(shí)施方式作為基礎(chǔ)而提供的第四種可能的實(shí)施方式中,所述電子設(shè)備500的存儲(chǔ)器中,還包含用于執(zhí)行以下操作的指令:

所述系統(tǒng)資源包括api,所述根據(jù)所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前所述第一應(yīng)用程序是否在執(zhí)行任務(wù),包括:

根據(jù)所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的api,判斷當(dāng)前所述第一應(yīng) 用程序是否調(diào)用或運(yùn)行所述api;

如果判斷出當(dāng)前所述第一應(yīng)用程序調(diào)用或運(yùn)行所述api,則判斷出當(dāng)前所述第一應(yīng)用程序在執(zhí)行任務(wù)。

在第一種可能的實(shí)施方式作為基礎(chǔ)而提供的第五種可能的實(shí)施方式中,所述電子設(shè)備500的存儲(chǔ)器中,還包含用于執(zhí)行以下操作的指令:

所述結(jié)束所述第一應(yīng)用程序在所述終端的后臺(tái)繼續(xù)運(yùn)行之前,還包括:

檢測(cè)所述第一應(yīng)用程序當(dāng)前是否提供了可交互的ui,如果沒有提供,則執(zhí)行所述結(jié)束所述第一應(yīng)用程序在所述終端的后臺(tái)繼續(xù)運(yùn)行的操作。

在第一種或第五種可能的實(shí)施方式作為基礎(chǔ)而提供的第六種可能的實(shí)施方式中,所述電子設(shè)備500的存儲(chǔ)器中,還包含用于執(zhí)行以下操作的指令:

如果判斷出當(dāng)前所述第一應(yīng)用程序正在執(zhí)行任務(wù)或者檢測(cè)出檢測(cè)所述第一應(yīng)用程序當(dāng)前提供了可交互的ui,則確定所述第一應(yīng)用程序的第二關(guān)閉時(shí)間,所述第二關(guān)閉時(shí)間在所述第一關(guān)閉時(shí)間之后;在所述第二關(guān)閉時(shí)間到達(dá)時(shí),執(zhí)行所述根據(jù)所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,判斷當(dāng)前所述第一應(yīng)用程序是否在執(zhí)行任務(wù)的操作。

在第二種可能的實(shí)施方式作為基礎(chǔ)而提供的第七種可能的實(shí)施方式中,所述電子設(shè)備500的存儲(chǔ)器中,還包含用于執(zhí)行以下操作的指令:

所述確定所述第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間之前,還包括:

在檢測(cè)出第一應(yīng)用程序從終端的前臺(tái)切換到后臺(tái)時(shí),將所述第一應(yīng)用程序的程序標(biāo)識(shí)從緩存隊(duì)列的隊(duì)尾入隊(duì);

在入隊(duì)后如果所述緩存隊(duì)列包括的應(yīng)用標(biāo)識(shí)數(shù)目超過預(yù)設(shè)數(shù)值,則從所述緩存隊(duì)列的隊(duì)頭出隊(duì)所述緩存隊(duì)列包括的程序標(biāo)識(shí),直到所述緩存隊(duì)列包括的程序標(biāo)識(shí)數(shù)目不超過預(yù)設(shè)數(shù)值時(shí)為止;

所述確定所述第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間,包括:

當(dāng)所述第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)從所述緩存隊(duì)列的隊(duì)頭出隊(duì)時(shí),確定所述第一應(yīng)用程序?qū)?yīng)的第一關(guān)閉時(shí)間。

在第七種可能的實(shí)施方式作為基礎(chǔ)而提供的第八種可能的實(shí)施方式中,所述電子設(shè)備500的存儲(chǔ)器中,還包含用于執(zhí)行以下操作的指令:

當(dāng)所述第一應(yīng)用程序的應(yīng)用標(biāo)識(shí)從所述緩存隊(duì)列的隊(duì)頭出隊(duì)時(shí),將所述第一應(yīng)用程序的程序標(biāo)識(shí)和所述第一關(guān)閉時(shí)間的對(duì)應(yīng)關(guān)系存儲(chǔ)在等待列表中;

所述在所述第一關(guān)閉時(shí)間到達(dá)時(shí),確定所述第一應(yīng)用程序在執(zhí)行任務(wù)時(shí)需要調(diào)用的系統(tǒng)資源,包括:

對(duì)所述等待列表存儲(chǔ)的關(guān)閉時(shí)間進(jìn)行實(shí)時(shí)檢測(cè),如果檢測(cè)出所述第一關(guān)閉時(shí)間到達(dá)時(shí),從所述等待列表中獲取所述第一關(guān)閉時(shí)間對(duì)應(yīng)的所述第一應(yīng)用程序的程序標(biāo)識(shí);

根據(jù)所述第一應(yīng)用程序的程序標(biāo)識(shí),確定所述第一應(yīng)用程序執(zhí)行任務(wù)時(shí)所調(diào)用的系統(tǒng)資源。

應(yīng)當(dāng)理解的是,在本文中使用的,除非上下文清楚地支持例外情況,單數(shù)形式“一個(gè)”(“a”、“an”、“the”)旨在也包括復(fù)數(shù)形式。還應(yīng)當(dāng)理解的是,在本文中使用的“和/或”是指包括一個(gè)或者一個(gè)以上相關(guān)聯(lián)地列出的項(xiàng)目的任意和所有可能組合。

上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。

本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。

以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
津南区| 资阳市| 普宁市| 南和县| 定日县| 阳城县| 大埔县| 乌什县| 木兰县| 友谊县| 溆浦县| 临夏市| 那坡县| 汕头市| 连州市| 安吉县| 饶平县| 乌拉特前旗| 堆龙德庆县| 嵩明县| 五原县| 宜兰市| 津市市| 黄龙县| 邢台市| 随州市| 泸定县| 陇南市| 上林县| 穆棱市| 科尔| 乌兰察布市| 澎湖县| 康马县| 东港市| 遂平县| 江北区| 汤原县| 同心县| 迭部县| 宜阳县|