控制應用進程啟動的方法及裝置制造方法
【專利摘要】本公開是控制應用進程啟動的方法及裝置,所述方法包括:獲取待啟動應用進程的進程信息;根據所述進程信息匹配進程分析列表,獲得匹配結果;當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動所述應用進程。本公開由于可以通過匹配進程分析列表,避免終端內不需要的應用進程自動啟動,因此可以節省終端的內存資源,保證終端操作系統的運行速度,從而提升用戶的終端使用體驗。
【專利說明】控制應用進程啟動的方法及裝置
【技術領域】
[0001] 本公開涉及通信【技術領域】,尤其涉及控制應用進程啟動的方法及裝置。
【背景技術】
[0002] 隨著智能終端的發展,用戶可以通過在終端上安裝各種APP(Application,應 用),以實現各種功能,例如,常見的即時通信類APP、游戲類APP、購物類APP等。每個APP 啟動后,可以通過調用操作系統提供的進程接口,自動啟動相應的應用進程,由于每個應用 進程都會占用一定的終端內存,當終端內自動啟動的應用進程數量增多時,終端內存將被 極大占用,導致內存資源不足,操作系統的反應變慢,從而影響用戶的終端使用體驗。
【發明內容】
[0003] 本公開提供了控制應用進程啟動的方法及裝置,以解決相關技術中終端內自動啟 動應用進程數量增多容易導致內存不足,影響終端使用體驗的問題。
[0004] 根據本公開實施例的第一方面,提供一種控制應用進程啟動的方法,所述方法包 括:
[0005] 獲取待啟動應用進程的進程信息;
[0006] 根據所述進程信息匹配進程分析列表,獲得匹配結果;
[0007] 當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動所述應用進程。
[0008] 可選的,所述獲取待啟動應用進程的進程信息之前,還包括:
[0009] 在每個時間周期內,記錄已啟動應用進程的使用信息;
[0010] 對所述已啟動應用進程的同一類型的使用信息進行排序,生成使用信息排序子列 表;
[0011] 通過分析所述使用信息排序子列表生成進程分析列表。
[0012] 可選的,所述時間周期包括:系統每一次從啟動到關閉的時間段,或者預設時長的 時間段;
[0013] 所述使用信息包括:所述已啟動應用進程的運行時長、自動啟動次數、隨機存儲器 RAM平均使用率、服務進程數量。
[0014] 可選的,所述對所述已啟動應用進程的同一類型的使用信息進行排序,生成使用 信息排序子列表,包括:
[0015] 當所述同一類型的使用信息為所述運行時長時,按照所述運行時長從長到短的順 序對所述已啟動應用進程進行排序,生成運行時長子列表;
[0016] 當所述同一類型的使用信息為所述自動啟動次數時,按照所述自動啟動次數從多 到少的順序對所述已啟動應用進程進行排序,生成自動啟動次數子列表;
[0017] 當所述同一類型的使用信息為所述RAM平均使用率時,按照所述RAM平均使用率 從高到低的順序對所述已啟動應用進程進行排序,生成RAM使用率子列表;
[0018] 當所述同一類型的使用信息為所述服務進程數量時,按照所述服務進程數量從多 到少的順序對所述已啟動應用進程進行排序,生成服務進程數子列表。
[0019] 可選的,所述通過分析所述使用信息排序子列表生成進程分析列表,包括:
[0020] 根據不同使用信息排序子列表的權重,按照預設策略對所述已啟動應用進程的啟 動權限進行排序;
[0021] 按照所述啟動權限從低到高的順序獲取預設數量的應用進程的進程名,組成作為 所述進程分析列表的應用進程黑名單列表,或者,按照所述啟動權限從高到低的順序獲取 預設數量的應用進程的進程名,組成作為所述進程分析列表的應用進程白名單列表。
[0022] 可選的,所述獲取待啟動應用進程的進程信息之前,還包括:
[0023] 保存用戶預先設置的進程分析列表,所述進程分析列表包括應用進程黑名單列 表,或者應用進程白名單列表,其中,所述應用進程黑名單列表包括按照啟動權限從低到高 排列的不允許自動啟動的應用進程的進程名,所述應用進程白名單列表包括按照啟動權限 從高到低排列的允許自動啟動的應用進程的進程名。
[0024] 可選的,所述獲取待啟動應用進程的進程信息,包括:
[0025] 發送系統廣播消息;
[0026] 從系統的啟動接口接收所述待啟動應用進程的進程信息,所述進程信息為所述待 啟動應用進程接收到所述系統廣播消息時,通過調用所述啟動接口向所述系統發送的所述 應用進程的進程名。
[0027] 可選的,所述當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動所 述應用進程,包括:
[0028] 當所述進程分析列表為應用進程黑名單列表時,如果從所述應用進程黑名單列表 中匹配到所述進程信息,則禁止自動啟動所述待啟動應用進程;
[0029] 當所述進程分析列表為應用進程白名單列表時,如果未從所述應用進程白名單列 表中匹配到所述進程信息,則禁止自動啟動所述待啟動應用進程。
[0030] 根據本公開實施例的第二方面,提供一種控制應用進程啟動的裝置,包括:
[0031] 獲取單元,用于獲取待啟動應用進程的進程信息;
[0032] 匹配單元,用于根據所述進程信息匹配進程分析列表,獲得匹配結果;
[0033] 控制單元,用于當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動 所述應用進程。
[0034] 可選的,還包括:
[0035] 記錄單元,用于在每個時間周期內,記錄已啟動應用進程的使用信息;
[0036] 排序單元,用于對所述已啟動應用進程的同一類型的使用信息進行排序,生成使 用信息排序子列表;
[0037] 生成單元,用于通過分析所述使用信息排序子列表生成進程分析列表。
[0038] 可選的,所述時間周期包括:系統每一次從啟動到關閉的時間段,或者預設時長的 時間段;
[0039] 所述使用信息包括:所述已啟動應用進程的運行時長、自動啟動次數、隨機存儲器 RAM平均使用率、服務進程數量。
[0040] 可選的,所述排序單元包括至少一個下述子單元:
[0041] 運行時長子列表生成子單元,用于當所述同一類型的使用信息為所述運行時長 時,按照所述運行時長從長到短的順序對所述已啟動應用進程進行排序,生成運行時長子 列表;
[0042] 自動啟動次數子列表子單元,用于當所述同一類型的使用信息為所述自動啟動次 數時,按照所述自動啟動次數從多到少的順序對所述已啟動應用進程進行排序,生成自動 啟動次數子列表;
[0043] RAM使用率子列表子單元,用于當所述同一類型的使用信息為所述RAM平均使用 率時,按照所述RAM平均使用率從高到低的順序對所述已啟動應用進程進行排序,生成RAM 使用率子列表;
[0044] 服務進程數子列表子單元,用于當所述同一類型的使用信息為所述服務進程數量 時,按照所述服務進程數量從多到少的順序對所述已啟動應用進程進行排序,生成服務進 程數子列表。
[0045] 可選的,所述生成單元包括:
[0046] 啟動權限排序子單元,用于根據不同使用信息排序子列表的權重,按照預設策略 對所述已啟動應用進程的啟動權限進行排序;
[0047] 進程分析列表生成子單元,用于按照所述啟動權限從低到高的順序獲取預設數量 的應用進程的進程名,組成作為所述進程分析列表的應用進程黑名單列表,或者,按照所述 啟動權限從高到低的順序獲取預設數量的應用進程的進程名,組成作為所述進程分析列表 的應用進程白名單列表。
[0048] 可選的,還包括:
[0049] 保存單元,用于保存用戶預先設置的進程分析列表,所述進程分析列表包括應用 進程黑名單列表,或者應用進程白名單列表,其中,所述應用進程黑名單列表包括按照啟動 權限從低到高排列的不允許自動啟動的應用進程的進程名,所述應用進程白名單列表包括 按照啟動權限從高到低排列的允許自動啟動的應用進程的進程名。
[0050] 可選的,所述獲取單元,包括:
[0051] 廣播消息發送子單元,用于發送系統廣播消息;
[0052] 進程信息獲取子單元,用于從系統的啟動接口接收所述待啟動應用進程的進程信 息,所述進程信息為所述待啟動應用進程接收到所述系統廣播消息時,通過調用所述啟動 接口向所述系統發送的所述應用進程的進程名。
[0053] 可選的,所述控制單元包括至少一個下述子單元:
[0054] 第一控制子單元,用于當所述進程分析列表為應用進程黑名單列表時,如果從所 述應用進程黑名單列表中匹配到所述進程信息,則禁止自動啟動所述待啟動應用進程;
[0055] 第二控制子單元,用于當所述進程分析列表為應用進程白名單列表時,如果未從 所述應用進程白名單列表中匹配到所述進程信息,則禁止自動啟動所述待啟動應用進程。
[0056] 根據本公開實施例的第三方面,提供一種控制應用進程啟動的裝置,包括:處理 器;用于存儲處理器可執行指令的存儲器;其中,所述處理器被配置為:
[0057] 獲取待啟動應用進程的進程信息;
[0058] 根據所述進程信息匹配進程分析列表,獲得匹配結果;
[0059] 當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動所述應用進程。
[0060] 本公開的實施例提供的技術方案可以包括以下有益效果:
[0061] 本公開中在應用進程自動啟動前,將應用進程的進程信息與進程分析列表進行匹 配,當匹配結果指示不允許啟動該應用進程時,則禁止自動啟動該應用進程。由于可以通過 匹配進程分析列表,避免終端內不需要的應用進程自動啟動,因此可以節省終端的內存資 源,保證終端操作系統的運行速度,從而提升用戶的終端使用體驗。
[0062] 本公開中在禁止不需要的應用進程自動啟動后,這些應用進程由于無法調用系統 服務發送通知消息,因此可以避免這些應用進程向用戶推送廣告消息,進一步節省了內存 資源。
[0063] 本公開中可以通過記錄每個時間周期內已啟動應用進程的使用信息,并根據這些 使用信息動態生成進程分析列表,也可以由用戶預先設置進程分析列表,從而可以根據進 程分析列表對待啟動應用進程是否能夠自動啟動進行靈活控制,以保證終端的內存資源得 到合理利用。
[0064] 本公開中可以根據需要獲得用于生成進程分析列表的多個使用信息,并通過對同 一類型的使用信息進行排序生成多個使用信息排序子列表,從而可以通過對這些使用信息 排序子列表進行分析生成最終的進程分析列表,當使用信息排序子列表的數量越多時,可 以有效提高進程分析列表的準確性。
[0065] 本公開中的進程分析列表可以包括應用進程黑名單列表或者應用進程白名單列 表,通過應用進程黑名單列表保存不允許自動啟動的應用進程的進程名,通過應用進程白 名單列表可以保存允許自動啟動的應用進程的進程名,從而可以靈活采用不同的匹配方式 對待啟動應用進程的啟動權限進行判斷。
[0066] 應當理解的是,以上的一般描述和后文的細節描述僅是示例性和解釋性的,并不 能限制本公開。
【專利附圖】
【附圖說明】
[0067] 此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本公開的實施 例,并與說明書一起用于解釋本公開的原理。
[0068] 圖1是本公開根據一示例性實施例示出的一種控制應用進程啟動的方法流程圖。
[0069] 圖2是本公開根據一示例性實施例示出的另一種控制應用進程啟動的方法流程 圖。
[0070] 圖3是本公開根據一示例性實施例示出的一種控制應用進程啟動的裝置框圖。
[0071] 圖4是本公開根據一示例性實施例示出的另一種控制應用進程啟動的裝置框圖。
[0072] 圖5是本公開根據一示例性實施例示出的另一種控制應用進程啟動的裝置框圖。
[0073] 圖6是本公開根據一示例性實施例示出的另一種控制應用進程啟動的裝置框圖。
[0074] 圖7是本公開根據一示例性實施例示出的另一種控制應用進程啟動的裝置框圖。
[0075] 圖8是本公開根據一示例性實施例示出的另一種控制應用進程啟動的裝置框圖。
[0076] 圖9是本公開根據一示例性實施例示出的另一種控制應用進程啟動的裝置框圖。
[0077] 圖10是本公開根據一示例性實施例示出的一種用于控制應用進程啟動的裝置的 一結構示意圖。
【具體實施方式】
[0078] 這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及 附圖時,除非另有表示,不同附圖中的相同數字表示相同或相似的要素。以下示例性實施例 中所描述的實施方式并不代表與本公開相一致的所有實施方式。相反,它們僅是與如所附 權利要求書中所詳述的、本公開的一些方面相一致的裝置和方法的例子。
[0079] 在本公開使用的術語是僅僅出于描述特定實施例的目的,而非旨在限制本公開。 在本公開和所附權利要求書中所使用的單數形式的"一種"、"所述"和"該"也旨在包括多 數形式,除非上下文清楚地表示其他含義。還應當理解,本文中使用的術語"和/或"是指 并包含一個或多個相關聯的列出項目的任何或所有可能組合。
[0080] 應當理解,盡管在本公開可能采用術語第一、第二、第三等來描述各種信息,但這 些信息不應限于這些術語。這些術語僅用來將同一類型的信息彼此區分開。例如,在不脫離 本公開范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第 一信息。取決于語境,如在此所使用的詞語"如果"可以被解釋成為"在……時"或"當…… 時"或"響應于確定"。
[0081] 如圖1所示,圖1是根據一示例性實施例示出的一種控制應用進程啟動的方法流 程圖,該方法可以用于終端中,包括以下步驟:
[0082] 在步驟101中,獲取待啟動應用進程的進程信息。
[0083] 本公開中的終端可以是任何具有上網功能的智能終端,例如,可以具體為手機、平 板電腦、PDA (Personal Digital Assistant,個人數字助理)等。其中,終端上可以安裝各 種APP,每個APP在啟動時,通常可以通過調用終端操作系統提供的進程的啟動接口,啟動 各自的進程,以實現每個APP的功能。在每個APP啟動后,其應用進程會占用終端內的系統 內存,該系統內存是APP運行過程中用于與終端的CPU交換高速緩存數據的數據臨時存儲 介質,通常指終端內的RAM (Random Access Memory,隨機存儲器)。
[0084] 當終端系統狀態發生變化時,例如,終端系統啟動,時區改變、電池電量變化、語言 選項改變、無線局域網狀態改變、數據流量狀態改變等,終端系統會發送系統廣播消息,以 通知終端內的APP ;當APP的應用進程接收到系統廣播消息時,準備自動啟動,此時應用進 程調用系統提供的進程的啟動接口,將該應用進程的進程名通過啟動接口發送給系統。
[0085] 在步驟102中,根據進程信息匹配進程分析列表,獲得匹配結果。
[0086] 本實施例中,進程分析列表可以為應用進程黑名單列表,應用進程黑名單列表中 可以包括按照應用進程的啟動權限從低到高排列的不允許自動啟動的應用進程的進程名; 或者,進程分析列表也可以為應用進程白名單列表,應用進程白名單列表中可以包括按照 啟動權限從高到低排列的允許自動啟動的應用進程的進程名。在獲得待啟動應用進程的進 程名后,可以根據該進程名與進程分析列表中的進程名進行匹配,匹配結果包括匹配到該 待啟動應用進程的進程名,或者未匹配到該待啟動應用進程的進程名。
[0087] 其中,本公開中進程分析列表可以采用如下任一方式獲得:
[0088] 第一種方式:動態生成進程分析列表。
[0089] 在每個時間周期內,記錄已啟動應用進程的使用信息,其中,時間周期可以包括終 端系統每一次從啟動到關閉的時間段,或者預設時長的時間段;使用信息可以包括:已啟 動應用進程的運行時長、自動啟動次數、RAM平均使用率、服務進程數量等。對于每個時間周 期內記錄的已啟動應用進程的使用信息,可以對其中同一類型的使用信息進行排序,生成 多個使用信息排序子列表,然后根據不同使用信息排序子列表的權重,按照預設策略對已 啟動應用進程的啟動權限進行排序,并根據排序結果生成進程分析列表,其中,當進程分析 列表為應用進程黑名單列表時,該應用進程黑名單列表中包括按照前述啟動權限從低到高 的順序獲取的預設數量的應用進程的進程名,當進程分析列表為應用進程白名單列表時, 該應用進程白名單列表中包括按照前述啟動權限從高到低的順序獲取的預設數量的應用 進程的進程名。
[0090] 第二種方式:預先設置進程分析列表。
[0091] 當用戶預先設置進程分析列表后,終端保存該進程分析列表,其中,當進程分析列 表為應用進程黑名單列表時,該應用進程黑名單列表中包括按照啟動權限從低到高排列的 不允許自動啟動的應用進程的進程名,當進程分析列表為應用進程白名單列表時,該應用 進程白名單列表中包括按照啟動權限從高到低排列的允許自動啟動的應用進程的進程名。
[0092] 在步驟103中,當匹配結果指示不允許啟動該應用進程時,禁止自動啟動該應用 進程。
[0093] 本實施例中,當進程分析列表的類型不同時,可以采用如下方式,根據不同的匹配 結果禁止自動啟動不允許啟動的應用進程:
[0094] 第一種方式:當進程分析列表為應用進程黑名單列表時,如果從該應用進程黑名 單列表中匹配到待啟動應用進程的進程名,則禁止自動啟動該待啟動應用進程。
[0095] 第二種方式:當進程分析列表為應用進程白名單列表時,如果未從該應用進程白 名單列表中匹配到待啟動應用進程的進程名,則禁止自動啟動該待啟動應用進程。
[0096] 由上述實施例可見,在應用進程自動啟動前,將應用進程的進程信息與進程分析 列表進行匹配,當匹配結果指示不允許啟動該應用進程時,則禁止自動啟動該應用進程。由 于可以通過匹配進程分析列表,避免終端內不需要的應用進程自動啟動,因此可以節省終 端的內存資源,保證終端操作系統的運行速度,從而提升用戶的終端使用體驗;并且在禁止 不需要的應用進程自動啟動后,這些應用進程由于無法調用系統服務發送通知消息,因此 可以避免這些應用進程向用戶推送廣告消息,進一步節省了內存資源。
[0097] 如圖2所示,圖2是根據一示例性實施例示出的另一種控制應用進程啟動的方法 流程圖,該方法可以用于終端中,該實施例詳細示出了按照時間周期更新進程分析列表,并 基于該進程分析列表控制應用進程自動啟動的過程,包括以下步驟:
[0098] 在步驟201中,在每個時間周期內,記錄已啟動應用進程的使用信息。
[0099] 本實施例中在每個時間周期內記錄已啟動應用進程的使用信息,以便根據該使用 信息獲得提供給下一個時間周期使用的進程分析列表。
[0100] 其中,時間周期可以是終端的操作系統每一次從啟動到關閉的時間段,例如,終端 操作系統每一次重啟的時間周期;或者,時間周期也可以是預設時長的時間段,例如,如果 終端操作系統長時間沒有重啟,則可以以設置12小時為一個時間周期。
[0101] 其中,已啟動應用進程的使用信息可以包括至少一個如下信息:
[0102] 運行時長:當應用進程啟動時,可以記錄當前終端系統的第一時間,當應用進程退 出時,可以記錄當前終端系統的第二時間,將第二時間與第一時間的時間差作為該應用進 程的運行時長;
[0103] 自動啟動次數:在每一次終端系統狀態發生變化時,終端系統都會發送系統廣播 消息,當應用進程接收到系統廣播消息時,會自動啟動,因此在每個時間周期內系統可以記 錄應用進程自動啟動的次數;
[0104] RAM平均使用率:在應用進程啟動后,會占用系統內存,根據應用進程在每個時間 周期內自動啟動的次數,以及每次自動啟動所占用的系統內存,可以計算出應用進程的RAM 平均使用率;
[0105] 服務進程數量:在應用進程啟動后,該應用進程會創建若干Service (服務),進 程,這些Service進程可以相互獨立,或者相互關聯,每個Service進程用于處理不同的任 務,因此可以統計出該應用進程創建的服務進程的數量。
[0106] 在步驟202中,對已啟動應用進程的同一類型的使用信息進行排序,生成使用信 息排序子列表。
[0107] 本步驟中,假設已啟動應用進程共有N個,N為大于1的自然數,則可以對這N個 應用進程的同一類型的使用信息進行排序,生成針對每一類型的使用信息的信息排序子列 表,該信息排序子列表中可以包括按照前述排序列出的N個應用進程的進程名。
[0108] 下面以當前時間周期啟動了三個應用進程為例,對生成使用信息排序子列表進行 描述:
[0109] 其中,當同一類型的使用信息為運行時長時,則按照運行時長從長到短的順序對 已啟動應用進程進行排序,可以生成如下表1所示的運行時長子列表:
【權利要求】
1. 一種控制應用進程啟動的方法,其特征在于,所述方法包括: 獲取待啟動應用進程的進程信息; 根據所述進程信息匹配進程分析列表,獲得匹配結果; 當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動所述應用進程。
2. 根據權利要求1所述的方法,其特征在于,所述獲取待啟動應用進程的進程信息之 前,還包括: 在每個時間周期內,記錄已啟動應用進程的使用信息; 對所述已啟動應用進程的同一類型的使用信息進行排序,生成使用信息排序子列表; 通過分析所述使用信息排序子列表生成進程分析列表。
3. 根據權利要求2所述的方法,其特征在于, 所述時間周期包括;系統每一次從啟動到關閉的時間段,或者預設時長的時間段; 所述使用信息包括:所述已啟動應用進程的運行時長、自動啟動次數、隨機存儲器RAM 平均使用率、服務進程數量。
4. 根據權利要求3所述的方法,其特征在于,所述對所述已啟動應用進程的同一類型 的使用信息進行排序,生成使用信息排序子列表,包括: 當所述同一類型的使用信息為所述運行時長時,按照所述運行時長從長到短的順序對 所述已啟動應用進程進行排序,生成運行時長子列表; 當所述同一類型的使用信息為所述自動啟動次數時,按照所述自動啟動次數從多到少 的順序對所述已啟動應用進程進行排序,生成自動啟動次數子列表; 當所述同一類型的使用信息為所述RAM平均使用率時,按照所述RAM平均使用率從高 到低的順序對所述已啟動應用進程進行排序,生成RAM使用率子列表; 當所述同一類型的使用信息為所述服務進程數量時,按照所述服務進程數量從多到少 的順序對所述已啟動應用進程進行排序,生成服務進程數子列表。
5. 根據權利要求2所述的方法,其特征在于,所述通過分析所述使用信息排序子列表 生成進程分析列表,包括: 根據不同使用信息排序子列表的權重,按照預設策略對所述已啟動應用進程的啟動權 限進行排序; 按照所述啟動權限從低到高的順序獲取預設數量的應用進程的進程名,組成作為所述 進程分析列表的應用進程黑名單列表,或者,按照所述啟動權限從高到低的順序獲取預設 數量的應用進程的進程名,組成作為所述進程分析列表的應用進程白名單列表。
6. 根據權利要求1所述的方法,其特征在于,所述獲取待啟動應用進程的進程信息之 前,還包括: 保存用戶預先設置的進程分析列表,所述進程分析列表包括應用進程黑名單列表,或 者應用進程白名單列表,其中,所述應用進程黑名單列表包括按照啟動權限從低到高排列 的不允許自動啟動的應用進程的進程名,所述應用進程白名單列表包括按照啟動權限從高 到低排列的允許自動啟動的應用進程的進程名。
7. 根據權利要求1所述的方法,其特征在于,所述獲取待啟動應用進程的進程信息,包 括: 發送系統廣播消息; 從系統的啟動接口接收所述待啟動應用進程的進程信息,所述進程信息為所述待啟動 應用進程接收到所述系統廣播消息時,通過調用所述啟動接口向所述系統發送的所述應用 進程的進程名。
8. 根據權利要求1至7任一所述的方法,其特征在于,所述當所述匹配結果指示不允許 啟動所述應用進程時,禁止自動啟動所述應用進程,包括: 當所述進程分析列表為應用進程黑名單列表時,如果從所述應用進程黑名單列表中匹 配到所述進程信息,則禁止自動啟動所述待啟動應用進程; 當所述進程分析列表為應用進程白名單列表時,如果未從所述應用進程白名單列表中 匹配到所述進程信息,則禁止自動啟動所述待啟動應用進程。
9. 一種控制應用進程啟動的裝置,其特征在于,包括: 獲取單元,用于獲取待啟動應用進程的進程信息; 匹配單元,用于根據所述進程信息匹配進程分析列表,獲得匹配結果; 控制單元,用于當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動所述 應用進程。
10. 根據權利要求9所述的裝置,其特征在于,還包括: 記錄單元,用于在每個時間周期內,記錄已啟動應用進程的使用信息; 排序單元,用于對所述已啟動應用進程的同一類型的使用信息進行排序,生成使用信 息排序子列表; 生成單元,用于通過分析所述使用信息排序子列表生成進程分析列表。
11. 根據權利要求10所述的裝置,其特征在于, 所述時間周期包括;系統每一次從啟動到關閉的時間段,或者預設時長的時間段; 所述使用信息包括;所述已啟動應用進程的運行時長、自動啟動次數、隨機存儲器RAM 平均使用率、服務進程數量。
12. 根據權利要求11所述的裝置,其特征在于,所述排序單元包括至少一個下述子單 元: 運行時長子列表生成子單元,用于當所述同一類型的使用信息為所述運行時長時,按 照所述運行時長從長到短的順序對所述已啟動應用進程進行排序,生成運行時長子列表; 自動啟動次數子列表子單元,用于當所述同一類型的使用信息為所述自動啟動次數 時,按照所述自動啟動次數從多到少的順序對所述已啟動應用進程進行排序,生成自動啟 動次數子列表; RAM使用率子列表子單元,用于當所述同一類型的使用信息為所述RAM平均使用率時, 按照所述RAM平均使用率從高到低的順序對所述已啟動應用進程進行排序,生成RAM使用 率子列表; 服務進程數子列表子單元,用于當所述同一類型的使用信息為所述服務進程數量時, 按照所述服務進程數量從多到少的順序對所述已啟動應用進程進行排序,生成服務進程數 子列表。
13. 根據權利要求10所述的裝置,其特征在于,所述生成單元包括: 啟動權限排序子單元,用于根據不同使用信息排序子列表的權重,按照預設策略對所 述已啟動應用進程的啟動權限進行排序; 進程分析列表生成子單元,用于按照所述啟動權限從低到高的順序獲取預設數量的應 用進程的進程名,組成作為所述進程分析列表的應用進程黑名單列表,或者,按照所述啟動 權限從高到低的順序獲取預設數量的應用進程的進程名,組成作為所述進程分析列表的應 用進程白名單列表。
14. 根據權利要求9所述的裝置,其特征在于,還包括: 保存單元,用于保存用戶預先設置的進程分析列表,所述進程分析列表包括應用進程 黑名單列表,或者應用進程白名單列表,其中,所述應用進程黑名單列表包括按照啟動權限 從低到高排列的不允許自動啟動的應用進程的進程名,所述應用進程白名單列表包括按照 啟動權限從高到低排列的允許自動啟動的應用進程的進程名。
15. 根據權利要求9所述的裝置,其特征在于,所述獲取單元,包括: 廣播消息發送子單元,用于發送系統廣播消息; 進程信息獲取子單元,用于從系統的啟動接口接收所述待啟動應用進程的進程信息, 所述進程信息為所述待啟動應用進程接收到所述系統廣播消息時,通過調用所述啟動接口 向所述系統發送的所述應用進程的進程名。
16. 根據權利要求9至15任一所述的裝置,其特征在于,所述控制單元包括至少一個下 述子單元: 第一控制子單元,用于當所述進程分析列表為應用進程黑名單列表時,如果從所述應 用進程黑名單列表中匹配到所述進程信息,則禁止自動啟動所述待啟動應用進程; 第二控制子單元,用于當所述進程分析列表為應用進程白名單列表時,如果未從所述 應用進程白名單列表中匹配到所述進程信息,則禁止自動啟動所述待啟動應用進程。
17. -種控制應用進程啟動的裝置,其特征在于,包括:處理器;用于存儲處理器可執 行指令的存儲器;其中,所述處理器被配置為: 獲取待啟動應用進程的進程信息; 根據所述進程信息匹配進程分析列表,獲得匹配結果; 當所述匹配結果指示不允許啟動所述應用進程時,禁止自動啟動所述應用進程。
【文檔編號】G06F9/48GK104461725SQ201410844047
【公開日】2015年3月25日 申請日期:2014年12月30日 優先權日:2014年12月30日
【發明者】黃其武, 邱峰, 張建春 申請人:小米科技有限責任公司