一種檢測移動(dòng)終端中應(yīng)用程序的運(yùn)行時(shí)長的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于移動(dòng)終端領(lǐng)域,尤其涉及一種檢測移動(dòng)終端中應(yīng)用程序的運(yùn)行時(shí)長的 方法及裝置。
【背景技術(shù)】
[0002] 隨著智能移動(dòng)終端的飛速發(fā)展,可在智能移動(dòng)終端中運(yùn)行的應(yīng)用程序的數(shù)量成級 數(shù)級上升,這給智能移動(dòng)終端用戶帶來方便的同時(shí),也給智能移動(dòng)終端的安全以及資源配 置帶來了極大的壓力。為了提高智能移動(dòng)終端的安全性、優(yōu)化智能移動(dòng)終端的資源分配,有 必要對智能移動(dòng)終端中運(yùn)行的應(yīng)用程序的運(yùn)行時(shí)長進(jìn)行檢測。
[0003] 現(xiàn)有的應(yīng)用程序的運(yùn)行時(shí)長的檢測方法一般是通過每個(gè)應(yīng)用程序自身來對該應(yīng) 用程序的運(yùn)行時(shí)長進(jìn)行檢測,這種方式使得每個(gè)應(yīng)用程序均要實(shí)現(xiàn)運(yùn)行時(shí)長檢測功能,導(dǎo) 致運(yùn)行時(shí)長的檢測與應(yīng)用程序的代碼耦合度緊,增加應(yīng)用程序的設(shè)計(jì)復(fù)雜度,另外由于需 要通過應(yīng)用程序自身來檢測該應(yīng)用程序的運(yùn)行時(shí)長,所以若有些應(yīng)用程序在設(shè)計(jì)時(shí)不實(shí)現(xiàn) 運(yùn)行時(shí)長檢測功能,則智能移動(dòng)終端也無法檢測到該應(yīng)用程序的運(yùn)行時(shí)長,從而導(dǎo)致智能 移動(dòng)終端無法通過對應(yīng)用程序的運(yùn)行時(shí)長進(jìn)行分析來確定智能移動(dòng)終端的資源分配和安 全防護(hù),導(dǎo)致智能移動(dòng)終端的安全性和資源分配受到限制。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明實(shí)施例提供一種檢測移動(dòng)終端中的應(yīng)用程序的運(yùn)行時(shí)長的方法,旨在解決 現(xiàn)有的通過每個(gè)應(yīng)用程序自身來檢測該應(yīng)用程序的運(yùn)行時(shí)長而導(dǎo)致的應(yīng)用程序設(shè)計(jì)復(fù)雜、 移動(dòng)終端無法檢測到所有應(yīng)用程序的運(yùn)行時(shí)長的問題。
[0005] -方面,提供一種檢測移動(dòng)終端中應(yīng)用程序的運(yùn)行時(shí)長的方法,,所述方法包括:
[0006] 監(jiān)測移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,獲取并記錄所述開始運(yùn)行的應(yīng)用程序的開 始運(yùn)行時(shí)間;
[0007] 監(jiān)測移動(dòng)終端中結(jié)束運(yùn)行的應(yīng)用程序,獲取并記錄所述結(jié)束運(yùn)行的應(yīng)用程序的結(jié) 束運(yùn)行時(shí)間;
[0008] 根據(jù)移動(dòng)終端中每個(gè)應(yīng)用程序的開始運(yùn)行時(shí)間和結(jié)束運(yùn)行時(shí)間確定所述應(yīng)用程 序的運(yùn)行時(shí)長。
[0009] 另一方面,提供一種檢測移動(dòng)終端中應(yīng)用程序的運(yùn)行時(shí)長的裝置,所述裝置包 括:
[0010] 第一監(jiān)測單元,用于監(jiān)測移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,獲取并記錄所述開始 運(yùn)行的應(yīng)用程序的開始運(yùn)行時(shí)間;
[0011] 第二監(jiān)測單元,用于監(jiān)測移動(dòng)終端中結(jié)束運(yùn)行的應(yīng)用程序,獲取并記錄所述結(jié)束 運(yùn)行的應(yīng)用程序的結(jié)束運(yùn)行時(shí)間;
[0012] 運(yùn)行時(shí)長確定單元,用于根據(jù)移動(dòng)終端中每個(gè)應(yīng)用程序的開始運(yùn)行時(shí)間和結(jié)束運(yùn) 行時(shí)間確定所述應(yīng)用程序的運(yùn)行時(shí)長。
[0013] 在本發(fā)明實(shí)施例中,通過對移動(dòng)終端中開始運(yùn)行的應(yīng)用程序以及結(jié)束運(yùn)行的應(yīng)用 程序進(jìn)行監(jiān)測,并在監(jiān)測到開始運(yùn)行的應(yīng)用程序時(shí),記錄開始運(yùn)行的應(yīng)用程序的開始運(yùn)行 時(shí)間,在監(jiān)測到結(jié)束運(yùn)行的應(yīng)用程序時(shí),記錄結(jié)束運(yùn)行的應(yīng)用程序的結(jié)束運(yùn)行時(shí)間,根據(jù)應(yīng) 用程序的開始運(yùn)行時(shí)間和結(jié)束運(yùn)行時(shí)間即可檢測出移動(dòng)終端中各應(yīng)用程序的運(yùn)行時(shí)長,從 而可以對移動(dòng)終端中的所有應(yīng)用程序的運(yùn)行時(shí)長進(jìn)行檢測,以便更好的對移動(dòng)終端中的應(yīng) 用程序進(jìn)行管理和資源分配,提高移動(dòng)終端的安全性、優(yōu)化移動(dòng)終端的資源配置,同時(shí)將運(yùn) 行時(shí)長的檢測與應(yīng)用程序代碼解耦合,簡化應(yīng)用程序的設(shè)計(jì)復(fù)雜度。
【附圖說明】
[0014] 為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。
[0015] 圖1是本發(fā)明實(shí)施例提供的檢測移動(dòng)終端中應(yīng)用程序的運(yùn)行時(shí)長的方法的實(shí)現(xiàn) 流程圖;
[0016] 圖2是本發(fā)明實(shí)施例提供的監(jiān)測移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,獲取并記錄移 動(dòng)終端中開始運(yùn)行的應(yīng)用程序的開始運(yùn)行時(shí)間的實(shí)現(xiàn)流程圖;
[0017] 圖3是本發(fā)明實(shí)施例提供的監(jiān)測移動(dòng)終端中結(jié)束運(yùn)行的應(yīng)用程序,獲取并記錄移 動(dòng)終端中結(jié)束運(yùn)行的應(yīng)用程序的結(jié)束運(yùn)行時(shí)間的實(shí)現(xiàn)流程圖;
[0018] 圖4是本發(fā)明實(shí)施例提供的監(jiān)測移動(dòng)終端中開始運(yùn)行和結(jié)束運(yùn)行的應(yīng)用程序,并 獲取開始運(yùn)行的應(yīng)用程序的開始運(yùn)行時(shí)間以及結(jié)束運(yùn)行的應(yīng)用程序的結(jié)束運(yùn)行時(shí)間的具 體流程圖;
[0019] 圖5本發(fā)明實(shí)施例提供的監(jiān)測移動(dòng)終端中指定應(yīng)用程序的開始運(yùn)行時(shí)間以及結(jié) 束運(yùn)行時(shí)間的具體流程圖;
[0020] 圖6是圖1中的S103的具體流程圖;
[0021] 圖7是本發(fā)明實(shí)施例提供的檢測移動(dòng)終端中應(yīng)用程序的運(yùn)行時(shí)長的裝置的結(jié)構(gòu) 框圖。
【具體實(shí)施方式】
[0022] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0023] 在本發(fā)明實(shí)施例中,通過對移動(dòng)終端中開始運(yùn)行的應(yīng)用程序和結(jié)束運(yùn)行的應(yīng)用程 序進(jìn)行監(jiān)測,并獲取應(yīng)用程序的開始運(yùn)行時(shí)間和結(jié)束運(yùn)行時(shí)間,以根據(jù)應(yīng)用程序的開始運(yùn) 行時(shí)間和結(jié)束運(yùn)行時(shí)間確定應(yīng)用程序的運(yùn)行時(shí)長,從而可以對移動(dòng)終端中的所有應(yīng)用程序 的運(yùn)行時(shí)長進(jìn)行檢測,以便更好的對移動(dòng)終端中的應(yīng)用程序進(jìn)行管理和資源分配,提高移 動(dòng)終端的安全性、優(yōu)化移動(dòng)終端的資源配置。
[0024] 為了說明本發(fā)明所述的技術(shù)方案,下面通過具體實(shí)施例來進(jìn)行說明。
[0025] 圖1示出了本發(fā)明實(shí)施例提供的檢測移動(dòng)終端中應(yīng)用程序的運(yùn)行時(shí)長的方法的 實(shí)現(xiàn)流程,詳述如下:
[0026] S101,監(jiān)測移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,獲取并記錄該開始運(yùn)行的應(yīng)用程序 的開始運(yùn)行時(shí)間(startTime)。
[0027] 其中移動(dòng)終端可以包括智能手機(jī)、平板電腦、電子書閱讀器等等。該移動(dòng)終端的操 作系統(tǒng)可以為安卓(Android)操作系統(tǒng),蘋果(I0S)操作系統(tǒng)等。
[0028] 移動(dòng)終端中的應(yīng)用程序包括可在移動(dòng)終端中運(yùn)行的所有或者部分應(yīng)用程序。
[0029] 在本實(shí)施例中,可采用應(yīng)用程序運(yùn)行狀態(tài)表來記錄并存儲開始運(yùn)行的應(yīng)用程序的 開始運(yùn)行時(shí)間。其中該應(yīng)用程序運(yùn)行狀態(tài)表中可包括應(yīng)用程序標(biāo)識字段、開始運(yùn)行時(shí)間字 段、結(jié)束運(yùn)行時(shí)間字段、運(yùn)行時(shí)長字段等。通過該應(yīng)用程序運(yùn)行狀態(tài)表來存儲移動(dòng)終端中應(yīng) 用程序的開始運(yùn)行時(shí)間、結(jié)束運(yùn)行時(shí)間和運(yùn)行時(shí)長??梢岳斫猓€可以采用其他方式來記錄 應(yīng)用程序的開始運(yùn)行時(shí)間、結(jié)束運(yùn)行時(shí)間和運(yùn)行時(shí)長,在此不再一一舉例說明。
[0030] 其中監(jiān)測移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,獲取并記錄該開始運(yùn)行的應(yīng)用程序的 開始運(yùn)行時(shí)間的具體過程如下:
[0031] A1、設(shè)置第一檢測周期,在每個(gè)第一檢測周期到達(dá)時(shí),讀取一次移動(dòng)終端中的應(yīng)用 程序運(yùn)行隊(duì)列。
[0032] 其中應(yīng)用程序運(yùn)行隊(duì)列中包括移動(dòng)終端中當(dāng)前正在運(yùn)行的應(yīng)用程序標(biāo)識。第一檢 測周期可以根據(jù)經(jīng)驗(yàn)進(jìn)行設(shè)置,如可將該第一檢測周期設(shè)置為2秒或其他時(shí)間。
[0033] 當(dāng)移動(dòng)終端采用Andro i d操作系統(tǒng)時(shí),可通過Andro i d操作系統(tǒng)的應(yīng)用程序 運(yùn)行隊(duì)列讀取接口(如getRunningAppProcesses())來讀取移動(dòng)終端中的應(yīng)用程序運(yùn) 行隊(duì)列。在本實(shí)施例中,在每個(gè)第一檢測周期到來時(shí),調(diào)用一次Android操作系統(tǒng)的 getRunningAppProcesses()接口,通過getRunningAppProcesses()接口來讀取移動(dòng)終端 中的應(yīng)用程序運(yùn)行隊(duì)列。
[0034] A2、將第一應(yīng)用程序運(yùn)行隊(duì)列與第二應(yīng)用程序運(yùn)行隊(duì)列進(jìn)行比較,并根據(jù)比較結(jié) 果確定移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,獲取并記錄所述開始運(yùn)行的應(yīng)用程序的開始運(yùn)行 時(shí)間。
[0035] 其中第一應(yīng)用程序運(yùn)行隊(duì)列和第二應(yīng)用程序運(yùn)行隊(duì)列為相鄰兩次從移動(dòng)終端中 讀取到的應(yīng)用程序運(yùn)行隊(duì)列,且第一應(yīng)用程序運(yùn)行隊(duì)列的讀取時(shí)間早于第二應(yīng)用程序運(yùn)行 隊(duì)列。
[0036] 在本實(shí)施例中,將第一應(yīng)用程序運(yùn)行隊(duì)列中包含的應(yīng)用程序標(biāo)識與第二應(yīng)用程序 運(yùn)行隊(duì)列中包含的應(yīng)用程序標(biāo)識進(jìn)行比較,查找出存在于第二應(yīng)用程序運(yùn)行隊(duì)列中但不存 在于第一應(yīng)用程序運(yùn)行隊(duì)列中的應(yīng)用程序標(biāo)識,該應(yīng)用程序標(biāo)識對應(yīng)的應(yīng)用程序即為監(jiān)測 到的移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,同時(shí)將當(dāng)前時(shí)間作為移動(dòng)終端中該開始運(yùn)行的應(yīng)用 程序的開始運(yùn)行時(shí)間。
[0037] 請參閱圖2,為本發(fā)明實(shí)施例提供的監(jiān)測移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,獲取并 記錄移動(dòng)終端中開始運(yùn)行的應(yīng)用程序的開始運(yùn)行時(shí)間的實(shí)現(xiàn)流程,詳述如下:
[0038] S201,在第一檢測周期到來時(shí),讀取移動(dòng)終端中的應(yīng)用程序運(yùn)行隊(duì)列,并將讀取到 的應(yīng)用程序運(yùn)行隊(duì)列標(biāo)記為第一應(yīng)用程序運(yùn)行隊(duì)列。
[0039] S202,在下一個(gè)第一檢測周期到來時(shí),讀取移動(dòng)終端中的應(yīng)用程序運(yùn)行隊(duì)列,并將 讀取到的應(yīng)用程序運(yùn)行隊(duì)列標(biāo)記為第二應(yīng)用程序運(yùn)行隊(duì)列。
[0040]S203,將第一應(yīng)用程序運(yùn)行隊(duì)列與第二應(yīng)用程序運(yùn)行隊(duì)列進(jìn)行比較,得到比較結(jié) 果。其中比較結(jié)果可能包括第一應(yīng)用程序運(yùn)行隊(duì)列包括的應(yīng)用程序標(biāo)識與第二應(yīng)用程序運(yùn) 行隊(duì)列包括的應(yīng)用程序標(biāo)識相同,第一應(yīng)用程序運(yùn)行隊(duì)列中包括第二應(yīng)用程序運(yùn)行隊(duì)列中 沒有的應(yīng)用程序標(biāo)識,或者第二應(yīng)用程序運(yùn)行隊(duì)列中包括第一應(yīng)用程序運(yùn)行隊(duì)列中沒有的 應(yīng)用程序標(biāo)識。
[0041]S204,根據(jù)比較結(jié)果確定是否存在開始運(yùn)行的應(yīng)用程序,如果否,執(zhí)行S205,否則 執(zhí)行S206。
[0042] 在本實(shí)施例中,當(dāng)比較結(jié)果為第一應(yīng)用程序運(yùn)行隊(duì)列包括的應(yīng)用程序標(biāo)識與第二 應(yīng)用程序運(yùn)行隊(duì)列包括的應(yīng)用程序標(biāo)識相同,或者第一應(yīng)用程序運(yùn)行隊(duì)列中包括第二應(yīng)用 程序運(yùn)行隊(duì)列中沒有的應(yīng)用程序標(biāo)識,則判定未監(jiān)測到移動(dòng)終端中開始運(yùn)行的應(yīng)用程序, 若比較結(jié)果為第二應(yīng)用程序運(yùn)行隊(duì)列中包括第一應(yīng)用程序運(yùn)行隊(duì)列中沒有的應(yīng)用程序標(biāo) 識,則判定監(jiān)測到移動(dòng)終端中開始運(yùn)行的應(yīng)用程序,且該開始運(yùn)行的應(yīng)用程序即為第二應(yīng) 用程序運(yùn)行隊(duì)列中包括的第一應(yīng)用程序運(yùn)行隊(duì)列中沒有的應(yīng)用程序標(biāo)識所對應(yīng)的應(yīng)用程 序。
[0043]S205,將第二應(yīng)用程序運(yùn)行隊(duì)列標(biāo)記為第一應(yīng)用程序運(yùn)行隊(duì)列,并跳轉(zhuǎn)至S202。
[0044]S206,將當(dāng)前時(shí)間設(shè)置為移動(dòng)終端中開始運(yùn)行的應(yīng)用程序的開始運(yùn)行時(shí)間,并跳 轉(zhuǎn)至S205。
[0045] 其中