專利名稱:一種監(jiān)控應(yīng)用程序的方法、系統(tǒng)及移動(dòng)終端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于移動(dòng)終端領(lǐng)域,尤其涉及一種監(jiān)控應(yīng)用程序的方法、系統(tǒng)及移動(dòng)終端。 背景 技術(shù)目前,移動(dòng)終端中的應(yīng)用程序越來越多,但當(dāng)普通的移動(dòng)終端中的應(yīng)用程序出現(xiàn) 異常時(shí),不能自動(dòng)恢復(fù)功能,一旦某些應(yīng)用程序出現(xiàn)異常,特別是一些關(guān)鍵的應(yīng)用程序出現(xiàn) 異常時(shí),很可能造成移動(dòng)終端死機(jī)或其他嚴(yán)重的問題。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種監(jiān)控應(yīng)用程序的方法,旨在解決現(xiàn)有技術(shù)中普 通的移動(dòng)終端中的應(yīng)用程序出現(xiàn)異常時(shí),不能自動(dòng)恢復(fù)功能的問題。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種監(jiān)控應(yīng)用程序的方法,所述方法包括以下步 驟獲取應(yīng)用程序的信息,并創(chuàng)建與所述應(yīng)用程序?qū)?yīng)的用于按照預(yù)先設(shè)定的第一周 期上報(bào)應(yīng)用程序的運(yùn)行狀態(tài)的線程,所述應(yīng)用程序的信息包括與所述應(yīng)用程序?qū)?yīng)的進(jìn)程 ID、允許使用的最大內(nèi)存上限、可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài)對(duì)應(yīng)的處理方式;創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn)行綁定;判斷在預(yù)先設(shè)置的第二周期內(nèi)是否接收到所述線程上報(bào)的應(yīng)用程序的運(yùn)行狀態(tài), 所述第二周期大于第一周期,若否,則按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序; 和/或判斷所述應(yīng)用程序的當(dāng)前內(nèi)存是否超過允許使用的最大內(nèi)存上限,若是,則按照 與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序。本發(fā)明實(shí)施例還提供了一種監(jiān)控應(yīng)用程序的系統(tǒng),所述系統(tǒng)包括獲取模塊,用于獲取應(yīng)用程序的信息,并創(chuàng)建與所述應(yīng)用程序?qū)?yīng)的用于按照預(yù) 先設(shè)定的第一周期上報(bào)應(yīng)用程序的運(yùn)行狀態(tài)的線程,所述應(yīng)用程序的信息包括與所述應(yīng)用 程序?qū)?yīng)的進(jìn)程ID、允許使用的最大內(nèi)存上限、可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài)對(duì) 應(yīng)的處理方式;監(jiān)控對(duì)象創(chuàng)建模塊,用于創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的信 息進(jìn)行綁定;第一判斷模塊,用于判斷在預(yù)先設(shè)置的第二周期內(nèi)是否接收到所述線程上報(bào)的應(yīng) 用程序的運(yùn)行狀態(tài),所述第二周期大于第一周期;和/或第二判斷模塊,用于判斷所述應(yīng)用程序的當(dāng)前內(nèi)存是否超過允許使用的最大內(nèi)存 上限;處理模塊,用于當(dāng)所述第一判斷模塊判斷在預(yù)先設(shè)置的第二周期內(nèi)沒有接收到所 述線程上報(bào)的應(yīng)用程序的運(yùn)行狀態(tài)時(shí)或所述第二判斷模塊判斷所述應(yīng)用程序的當(dāng)前內(nèi)存 超過允許使用的最大內(nèi)存上限時(shí),則按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序。
本發(fā)明實(shí)施例還提供了一種移動(dòng)終端,所述移動(dòng)終端包括所述的監(jiān)控應(yīng)用程序的 方法。本發(fā)明實(shí)施例與現(xiàn)有技術(shù)相比,有益效果在于通過獲取應(yīng)用程序的可能出現(xiàn)的 異常狀態(tài)及與所述異常狀態(tài)對(duì)應(yīng)的處理方式信息,可按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式 處理應(yīng)用程序,從而實(shí)現(xiàn)自動(dòng)恢復(fù)應(yīng)用程序的功能。
圖1是本發(fā)明實(shí)施例提供的一種監(jiān)控應(yīng)用程序的方法的流程圖;
圖2是本發(fā)明實(shí)施例提供的一種監(jiān)控應(yīng)用程序的系統(tǒng)的模塊框圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。本發(fā)明實(shí)施例中,通過獲取應(yīng)用程序的可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài)對(duì) 應(yīng)的處理方式信息,可按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序,從而實(shí)現(xiàn)自動(dòng) 恢復(fù)應(yīng)用程序的功能。請(qǐng)參閱圖1,本發(fā)明實(shí)施例提供一種監(jiān)控應(yīng)用程序的方法,所述方法包括以下步 驟SlOl 獲取應(yīng)用程序的信息,并創(chuàng)建與所述應(yīng)用程序?qū)?yīng)的用于按照預(yù)先設(shè)定的 第一周期上報(bào)應(yīng)用程序的運(yùn)行狀態(tài)的線程,所述應(yīng)用程序的信息包括與所述應(yīng)用程序?qū)?yīng) 的進(jìn)程ID、允許使用的最大內(nèi)存上限、可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài)對(duì)應(yīng)的處理 方式;S102 創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn)行綁定;S103:判斷在預(yù)先設(shè)置的第二周期內(nèi)是否接收到所述線程上報(bào)的應(yīng)用程序的運(yùn)行 狀態(tài),所述第二周期大于第一周期,若否,則進(jìn)入步驟S105 按照與所述異常狀態(tài)對(duì)應(yīng)的處 理方式處理應(yīng)用程序;和/或S104:判斷所述應(yīng)用程序的當(dāng)前內(nèi)存是否超過允許使用的最大內(nèi)存上限,若是,則 進(jìn)入步驟S105 按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序。在步驟S103中,若在預(yù)先設(shè)置的第二周期內(nèi)接收到所述線程上報(bào)的應(yīng)用程序的 運(yùn)行狀態(tài),則進(jìn)入步驟S106 不響應(yīng)。在步驟S104中,若所述應(yīng)用程序的當(dāng)前內(nèi)存沒有超過允許使用的最大內(nèi)存上限, 則進(jìn)入步驟S107 不響應(yīng)。作為本發(fā)明的一個(gè)實(shí)施例,所述步驟S102之后還包括以下步驟將監(jiān)控對(duì)象插入監(jiān)控隊(duì)列;所述將監(jiān)控對(duì)象插入監(jiān)控隊(duì)列之后還包括以下步驟返回給應(yīng)用程序一個(gè)注冊(cè)ID ;當(dāng)接收到用戶注銷所述注冊(cè)ID的信息時(shí),則將所述注冊(cè)ID對(duì)應(yīng)的監(jiān)控對(duì)象從監(jiān) 控隊(duì)列中移除,以撤銷對(duì)所述應(yīng)用程序的監(jiān)控。
所述當(dāng)接收到用戶注銷所述注冊(cè)ID的信息時(shí),則將所述注冊(cè)ID對(duì)應(yīng)的監(jiān)控對(duì)象 從監(jiān)控隊(duì)列中移除,以撤銷對(duì)所述應(yīng)用程序的監(jiān)控的步驟之后還包括以下步驟更新監(jiān)控隊(duì)列。其中,所述創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn)行綁定,并 將監(jiān)控對(duì)象插入監(jiān)控隊(duì)列之后還包括以下步驟更新監(jiān)控隊(duì)列。在本發(fā)明的實(shí)施例中,通過當(dāng)接收到用戶注銷所述注冊(cè)ID的信息時(shí),則將所述注 冊(cè)ID對(duì)應(yīng)的監(jiān)控對(duì)象從監(jiān)控隊(duì)列中移除,可以方便的撤銷對(duì)應(yīng)用程序的監(jiān)控。作為本發(fā)明的一個(gè)實(shí)施例所述步驟S102之后還包括以下步驟將創(chuàng)建的監(jiān)控對(duì)象串聯(lián)成一個(gè)監(jiān)控隊(duì)列;在 預(yù)先設(shè)置的第二周期內(nèi)遍歷所述監(jiān)控隊(duì)列。在本發(fā)明的實(shí)施例中,當(dāng)有多個(gè)應(yīng)用程序需要監(jiān)控時(shí),可方便快捷的遍歷監(jiān)控隊(duì) 列來進(jìn)行監(jiān)控。請(qǐng)參閱圖2,本發(fā)明實(shí)施例還提供一種監(jiān)控應(yīng)用程序的系統(tǒng),所述系統(tǒng)包括獲取模塊201,用于獲取應(yīng)用程序的信息,并創(chuàng)建與所述應(yīng)用程序?qū)?yīng)的用于按照 預(yù)先設(shè)定的第一周期上報(bào)應(yīng)用程序的運(yùn)行狀態(tài)的線程,所述應(yīng)用程序的信息包括與所述應(yīng) 用程序?qū)?yīng)的進(jìn)程ID、允許使用的最大內(nèi)存上限、可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài) 對(duì)應(yīng)的處理方式;監(jiān)控對(duì)象創(chuàng)建模塊202,用于創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的 信息進(jìn)行綁定;第一判斷模塊203,用于判斷在預(yù)先設(shè)置的第二周期內(nèi)是否接收到所述線程上報(bào) 的應(yīng)用程序的運(yùn)行狀態(tài),所述第二周期大于第一周期;和/或第二判斷模塊204,用于判斷所述應(yīng)用程序的當(dāng)前內(nèi)存是否超過允許使用的最大 內(nèi)存上限;處理模塊205,用于當(dāng)所述第一判斷模塊203判斷在預(yù)先設(shè)置的第二周期內(nèi)沒有 接收到所述線程上報(bào)的應(yīng)用程序的運(yùn)行狀態(tài)時(shí)或所述第二判斷模塊204判斷所述應(yīng)用程 序的當(dāng)前內(nèi)存超過允許使用的最大內(nèi)存上限時(shí),則按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處
理應(yīng)用程序。作為本發(fā)明的一個(gè)實(shí)施例,所述系統(tǒng)還包括插入模塊,用于將監(jiān)控對(duì)象插入監(jiān)控隊(duì)列。作為本發(fā)明的一個(gè)實(shí)施例,所述系統(tǒng)還包括注冊(cè)ID模塊,用于返回給應(yīng)用程序一個(gè)注冊(cè)ID ;撤銷模塊,用于當(dāng)接收到用戶注銷所述注冊(cè)ID的信息時(shí),將所述注冊(cè)ID對(duì)應(yīng)的監(jiān) 控對(duì)象從監(jiān)控隊(duì)列中移除,以撤銷對(duì)所述應(yīng)用程序的監(jiān)控。作為本發(fā)明的一個(gè)實(shí)施例,所述系統(tǒng)還包括監(jiān)控隊(duì)列模塊,用于將創(chuàng)建的監(jiān)控對(duì)象串聯(lián)成一個(gè)監(jiān)控隊(duì)列;遍歷模塊,用于在預(yù)先設(shè)置的第二周期內(nèi)遍歷所述監(jiān)控隊(duì)列。本發(fā)明實(shí)施例還提供一種移動(dòng)終端,所述移動(dòng)終端包括所述的監(jiān)控應(yīng)用程序的系 統(tǒng)。
本發(fā)明的監(jiān)控應(yīng)用程序的方法、系統(tǒng)及移動(dòng)終端,通過獲取應(yīng)用程序的可能出現(xiàn) 的異常狀態(tài)及與所述異常狀態(tài)對(duì)應(yīng)的處理方式信息,可按照與所述異常狀態(tài)對(duì)應(yīng)的處理方 式處理應(yīng)用程序,從而實(shí)現(xiàn)自動(dòng)恢復(fù)應(yīng)用程序的功能。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精 神 和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種監(jiān)控應(yīng)用程序的方法,其特征在于,所述方法包括以下步驟獲取應(yīng)用程序的信息,并創(chuàng)建與所述應(yīng)用程序?qū)?yīng)的用于按照預(yù)先設(shè)定的第一周期上報(bào)應(yīng)用程序的運(yùn)行狀態(tài)的線程,所述應(yīng)用程序的信息包括與所述應(yīng)用程序?qū)?yīng)的進(jìn)程ID、允許使用的最大內(nèi)存上限、可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài)對(duì)應(yīng)的處理方式;創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn)行綁定;判斷在預(yù)先設(shè)置的第二周期內(nèi)是否接收到所述線程上報(bào)的應(yīng)用程序的運(yùn)行狀態(tài),所述第二周期大于第一周期,若否,則按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序;和/或判斷所述應(yīng)用程序的當(dāng)前內(nèi)存是否超過允許使用的最大內(nèi)存上限,若是,則按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序。
2.如權(quán)利要求1所述的監(jiān)控應(yīng)用程序的方法,其特征在于,所述創(chuàng)建監(jiān)控對(duì)象,將所述 監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn)行綁定的步驟之后還包括以下步驟將監(jiān)控對(duì)象插入監(jiān)控隊(duì)列。
3.如權(quán)利要求2所述的監(jiān)控應(yīng)用程序的方法,其特征在于,所述將監(jiān)控對(duì)象插入監(jiān)控 隊(duì)列的步驟之后還包括以下步驟返回給應(yīng)用程序一個(gè)注冊(cè)ID ;當(dāng)接收到用戶注銷所述注冊(cè)ID的信息時(shí),則將所述注冊(cè)ID對(duì)應(yīng)的監(jiān)控對(duì)象從監(jiān)控隊(duì) 列中移除,以撤銷對(duì)所述應(yīng)用程序的監(jiān)控。
4.如權(quán)利要求1所述的監(jiān)控應(yīng)用程序的方法,其特征在于,所述創(chuàng)建監(jiān)控對(duì)象,將所述 監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn)行綁定的步驟之后還包括以下步驟將創(chuàng)建的監(jiān)控對(duì)象串聯(lián)成一個(gè)監(jiān)控隊(duì)列;在預(yù)先設(shè)置的第二周期內(nèi)遍歷所述監(jiān)控隊(duì)列。
5.一種監(jiān)控應(yīng)用程序的系統(tǒng),其特征在于,所述系統(tǒng)包括獲取模塊,用于獲取應(yīng)用程序的信息,并創(chuàng)建與所述應(yīng)用程序?qū)?yīng)的用于按照預(yù)先設(shè) 定的第一周期上報(bào)應(yīng)用程序的運(yùn)行狀態(tài)的線程,所述應(yīng)用程序的信息包括與所述應(yīng)用程序 對(duì)應(yīng)的進(jìn)程ID、允許使用的最大內(nèi)存上限、可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài)對(duì)應(yīng)的 處理方式;監(jiān)控對(duì)象創(chuàng)建模塊,用于創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn) 行綁定;第一判斷模塊,用于判斷在預(yù)先設(shè)置的第二周期內(nèi)是否接收到所述線程上報(bào)的應(yīng)用程 序的運(yùn)行狀態(tài),所述第二周期大于第一周期;和/或第二判斷模塊,用于判斷所述應(yīng)用程序的當(dāng)前內(nèi)存是否超過允許使用的最大內(nèi)存上限;處理模塊,用于當(dāng)所述第一判斷模塊判斷在預(yù)先設(shè)置的第二周期內(nèi)沒有接收到所述線 程上報(bào)的應(yīng)用程序的運(yùn)行狀態(tài)時(shí)或所述第二判斷模塊判斷所述應(yīng)用程序的當(dāng)前內(nèi)存超過 允許使用的最大內(nèi)存上限時(shí),則按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序。
6.如權(quán)利要求5所述的監(jiān)控應(yīng)用程序的系統(tǒng),其特征在于,所述系統(tǒng)還包括插入模塊,用于將監(jiān)控對(duì)象插入監(jiān)控隊(duì)列。
7.如權(quán)利要求6所述的監(jiān)控應(yīng)用程序的系統(tǒng),其特征在于,所述系統(tǒng)還包括注冊(cè)ID模塊,用于返回給應(yīng)用程序一個(gè)注冊(cè)ID ;撤銷模塊,用于當(dāng)接收到用戶注銷所述注冊(cè)ID的信息時(shí),將所述注冊(cè)ID對(duì)應(yīng)的監(jiān)控對(duì) 象從監(jiān)控隊(duì)列中移除,以撤銷對(duì)所述應(yīng)用程序的監(jiān)控。
8.如權(quán)利要求5所述的監(jiān)控應(yīng)用程序的系統(tǒng),其特征在于,所述系統(tǒng)還包括 監(jiān)控隊(duì)列模塊,用于將創(chuàng)建的監(jiān)控對(duì)象串聯(lián)成一個(gè)監(jiān)控隊(duì)列;遍歷模塊,用于在預(yù)先設(shè)置的第二周期內(nèi)遍歷所述監(jiān)控隊(duì)列。
9.一種移動(dòng)終端,其特征在于,所述移動(dòng)終端包括權(quán)利要求5所述的監(jiān)控應(yīng)用程序的 系統(tǒng)。
全文摘要
本發(fā)明適用于移動(dòng)終端領(lǐng)域,提供了一種監(jiān)控應(yīng)用程序的方法、系統(tǒng)及移動(dòng)終端,所述方法包括以下步驟獲取應(yīng)用程序的信息,并創(chuàng)建與所述應(yīng)用程序?qū)?yīng)的用于按照預(yù)先設(shè)定的第一周期上報(bào)應(yīng)用程序的運(yùn)行狀態(tài)的線程;創(chuàng)建監(jiān)控對(duì)象,將所述監(jiān)控對(duì)象與獲取的應(yīng)用程序的信息進(jìn)行綁定;判斷在預(yù)先設(shè)置的第二周期內(nèi)是否接收到所述線程上報(bào)的應(yīng)用程序的運(yùn)行狀態(tài),若否,則按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序。本發(fā)明的監(jiān)控應(yīng)用程序的方法、系統(tǒng)及移動(dòng)終端,通過獲取應(yīng)用程序的可能出現(xiàn)的異常狀態(tài)及與所述異常狀態(tài)對(duì)應(yīng)的處理方式信息,可按照與所述異常狀態(tài)對(duì)應(yīng)的處理方式處理應(yīng)用程序,從而實(shí)現(xiàn)自動(dòng)恢復(fù)應(yīng)用程序的功能。
文檔編號(hào)G06F11/36GK101859275SQ20101011992
公開日2010年10月13日 申請(qǐng)日期2010年3月8日 優(yōu)先權(quán)日2010年3月8日
發(fā)明者王斌 申請(qǐng)人:宇龍計(jì)算機(jī)通信科技(深圳)有限公司