專利名稱:手機應用程序的啟動方法、裝置和系統的制作方法
技術領域:
本發明涉及通信領i或,具體而言,涉及一種手才幾應用禾呈序的啟 動方法、裝置和系統。
背景技術:
隨著智能手機數量的快速增長,人們對智能手才幾中應用需求也曰新月異,從基本的電話本,呼叫等本地業務到彩信,瀏覽器,java 等增值業務。同時手一幾應用的功能和復雜度也日益增強,勢必將造 成更多的資源消耗。由于手機終端屬于一種小型的嵌入式設備,在 CPU、內存上不像PC機那樣無限擴展。對于用戶體驗而言,手機 應用功能的多4羊化和應用的啟動速度就成了重要的4軒量標準。目前,手才幾應用啟動的實J見分為以下幾種方式1 )以正常方式啟動。當用戶點擊桌面圖標,首先生成一個子進程,然后通過exec函 凄史加載應用的可扭^亍文件。 .2)以予貞力o載方式啟動,即采用'決速啟動的方式。以這種方式將會把應用分為兩個階段,第 一 為各應用的公共的 初始化部分,包括窗口的初始化,第二就是個應用自身的初始化和 窗口顯示。具體估文法就是事先啟動一個快速啟動進^^,完成應用的第一個階段的任務,等需要啟動應用時,通過加載動態庫的方式,直接開始進入主窗口運行。快速啟動的時間分為以下兩個情況a) 當系鄉充一刀始4匕啟動時;b) 當快速啟動進入應用主窗口后,就變為具體的某個應用,此 時需要啟動下個快速啟動進程以備下個應用使用。3)以予貞力。載+'決速啟動'池的方式啟動。快速啟動池類似于線程池的概念,當需要啟動某個應用時,就 從快速啟動池中取出一個快速啟動進程供應用4吏用,當快速啟動池 中沒有可供應用〗吏用的快速啟動進禾呈,就以正常的方式啟動。通過實際運用,這將會引發以下問題1) 以第一種方式啟動應用,由于應用程序本身的復雜度,將導 至丈啟動速度'隄,用戶體馬全差。2) 以第二種方式啟動應用,由于快速啟動進禾呈完成了應用中第 一階,殳的7>共初始化#:作,當真正啟動應用禾呈序時,3夸大大4是高應 用的啟動速度,解決由第一種方式帶來的弊端。但是當應用快速切 換,此時新的快速啟動進程還沒有啟動成功,應用將以正常方式啟 動,導致啟動速度變l曼。此外,還存在這樣一種情況,新的應用禾呈 序和新的快速啟動進程同時啟動,導致進程間切換的開銷增大,使 4尋應用啟動比正常啟動更'隄,用戶體馬全差。3 )以第三種方式啟動應用,/人某些角度上可以解決上述兩種方 式導致的問題,但是快速啟動池中的進程數無法達到理想值,如果 進程凄t太小,則當多^f壬動;如果進程數太大,則將消耗過多的本來就有限的內存資源,當 應用禾呈序4艮少時,這種在夬點更加明顯。
由jt匕可見,;t見,孑5L不T于"W立用畔主廳的^叨萬》 點,特別是在應用程序快速切換時,存在啟動速度慢,用戶體^^差, 同時造成系統資源浪費等問題。
發明內容
速度慢,用戶體驗差,同時造成系統資源浪費的問題而提出本發明, 為此,本發明的主要目的在于提供一種手坤幾應用程序的啟動方法、 裝置和系統,以解決上述問題至少之一。
才艮據本發明的一個方面,4是供了 一種手4幾應用禾呈序的啟動方法。
才艮據本發明的手機應用程序的啟動方法包括在收到第 一應用 程序的啟動請求時,判斷是否存在已注冊的第 一類型快速啟動進程, 如果存在,則通過已注冊的第一類型快速啟動進程來啟動第一應用 程序;如果不存在已注冊的第一類型快速啟動進程,則終止已創建 的未注冊的第 一 類型快速啟動進程。
優選的,上述方法在終止已創建的未注冊的第一類型快速啟動 進程之后,進一步包括判斷是否存在已注冊的第二類型快速啟動 進程,如果存在,則通過已注冊的第二類型快速啟動進禾呈來啟動第 一應用禾呈序。
根據本發明的另 一個方面,提供了 一種手機應用程序的啟動裝置。根據本發明的手機應用程序的啟動裝置包括接收模塊,用于 接收來自終端的應用程序的啟動請求以及包括應用程序啟動標識的 注冊信息;第一判斷才莫塊,用于在4妄收到來自終端的應用程序的啟 動請求之后判斷是否存在已注冊的第一類型快速啟動進程;終止才莫 塊,用于在不存在已注冊的第一類型快速啟動進程的情況下,終止 已創建的未注冊的第一類型快速啟動進程;啟動才莫塊,用于在存在 已注冊的第一類型快速啟動進程的情況下,通過已注冊的第一類型 快速啟動進禾呈來啟動應用禾呈序。
優選的,上述裝置進一步包括第二判斷才莫塊,用于在終止已 創建的未注冊的第一類型快速啟動進程之后判斷是否存在已注冊的 第二類型快速啟動進程,其中,啟動4莫塊還用于在存在已注冊的第 二類型快速啟動進程的情況下,通過已注冊的第二類型快速啟動進 程來啟動應用程序。
根據本發明的又一個方面,提供了 一種手才幾應用程序的啟動系統。
根據本發明的手機應用程序的啟動系統包括應用管理裝置, 用于監控各應用程序的狀態和各快速啟動進程的狀態,其中,快速 啟動進程包括第一類型快速啟動進程;應用啟動裝置,用于通過快 速啟動進程來啟動應用程序。其中,應用啟動裝置進一步包4舌,第 一接收才莫塊,用于接收來自終端的第 一應用程序的啟動請求和來自 應用管理裝置的查詢結果;第一判斷才莫塊,用于在4妻收到啟動請求 之后一艮據查詢結果來判斷是否存在已注冊的第一類型快速啟動進 程;終止才莫塊,用于在不存在已注冊的第一類型快速啟動進程的情 況下,終止已創建的未注冊的第一類型快速啟動進禾呈;啟動才莫塊, 用于在存在已注冊的第一類型快速啟動進禾呈的情況下,通過已注冊 的第一類型快速啟動進程來啟動應用程序;第一發送模塊,用于向 應用管理裝置發送查詢:清求以查詢快速啟動進禾呈的爿大態。優選的,上述應用管理裝置監控的快速啟動進程還包括第二類
型快速啟動進程,而應用啟動裝置進一步包括第二判斷模塊,用 于在終止已創建的未注冊的第一類型快速啟動進程之后根據來自應 用管理裝置的查詢結果來判斷是否存在已注冊的第二類型快速啟動 進程,其中,啟動才莫塊還用于在存在已注冊的第二類型快速啟動進 程的情況下,通過已注冊的第二類型快速啟動進程來啟動應用程序。
在應用程序快速切換時,本發明在判斷出沒有已注冊的第 一 類 型快速啟動進程之后強4于終止已創建的未注冊的第 一類型快速啟動 進程,并在判斷出存在已注冊的第二類型快速啟動進程之后, <吏用 該已注冊的第二類型快速啟動進程來啟動新的應用程序。由于在啟 動應用禾呈序時強^f亍纟冬止了已創建的未注冊的第一類型快速啟動進 程,并可以通過已注冊的第二類型快速啟動進程來啟動應用程序,
的啟動速度'f曼,用戶體-驗差,同時造成系統資源浪費的問題,進而 達到了在應用程序快速切換時加快應用程序啟動的速度,改善用戶 體驗的效果。
附圖i兌明
此處所說明的附圖用來提供對本發明的進一步理解,構成本申 請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并 不構成對本發明的不當限定。在附圖中
圖1是通過才艮據本發明實施例的注冊為LAUNCH—FAST的第 一類型快速啟動進禾呈來啟動應用#呈序的流禾呈圖2是通過才艮據本發明實施例的注冊為LAUNCH—NORMAL 第二類型快速啟動進程來啟動應用程序的流程圖3是根據本發明實施例的手機應用程序的啟動方法;圖4是根據本發明實施例的手機應用程序的啟動裝置; 圖5是根據本發明實施例的手機應用禾呈序的啟動系統。
具體實施例方式
下文中將參考附圖并結合實施例來詳細說明本發明。需要說明 的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可 以才目互纟且合。
功能扭克述
動速度慢,用戶體驗差,同時造成系統資源浪費的問題,本發明實 施例4是供了一種手才幾應用禾呈序的啟動方法、裝置和系統。在應用禾呈
序快速切:換時,上述啟動方法在判斷出沒有已注冊的第 一類型快速 啟動進考呈之后強行終止已創建的未注冊的第 一 類型快速啟動進#呈, 并判斷出存在已注冊的第二類型快速啟動進程之后,使用該已注冊 的第二類型快速啟動進程來啟動新的應用程序。由于在啟動應用程
序時強行終止了已創建的未注冊的第一類型快速啟動進程,并可以 通過已注冊的第二類型快速啟動進禾呈來啟動應用考呈序,,人而解決了
慢,用戶體驗差,同時造成系統資源浪費的問題,進而達到了在應 用程序快速切換時加快應用程序啟動的速度,改善用戶體-驗的效果。
方法實施例
根據本發明的實施例,提供了 一種手才幾應用程序的啟動方法,1 )構建一個應用管3里子系統(AMSS, Application Management Sub System ),該系統的目的在于監控各應用程序的運4亍狀態(運4亍 和退出)和快速啟動進禾呈的啟動和注冊習犬態。
2)如圖2所示,在系統初始化時,可以自動生成快速啟動進程 A和B,并且進程A同時創建(fork)出一個子進程C,其中,快 速啟動進程B稱為第一類型快速啟動進程,而快速啟動進程C稱為 第二類型快速啟動進程。上述子進程C主要負責與AMSS進行連接 注冊,并注冊為 LAUNCH—NORMAL 。 該注冊為 LAUNCH_NORMAL的子進禾呈C主要用于在凈皮調用之前完成應用 程序創建所需的初始化才喿作,以減少在調用進禾呈C來啟動應用禾呈序 時所需的啟動時間,其中,上述應用程序創建所需的初始化才乘作屬 于啟動各應用程序時公共的操作。此外,子進程C的父進程A主要 負責監控該子進程的狀態,當該子進程C退出時,又重新創建出一 個子進程,重復上述操作。
3 )第一類型快速啟動進程B主要負責與AMSS完成連接注冊, 并注冊為LAUNCH—FAST。注冊為LAUNCH—FAST的第一類型十夬 速啟動進程B主要用于完成以下兩個階4殳的^f壬務第一階,殳4壬務為 執行應用程序創建所需的初始化操:作;第二階,殳任務為#1行應用程 序窗口所需的初始化操作,其中,上述的應用程序創建所需的初始 化才喿作和應用#呈序窗口所需的初始4匕才乘作屬于啟動各應用#呈序時^> 共的操作。由于上述兩個階段的任務均在啟動應用程序之前完成, 所以減少了在調用第 一類型快速啟動進程B來啟動應用程序時所需 的啟動時間。
圖1是通過4艮據本發明實施例的注冊為LAUNCH_FAST的第 一類型快速啟動進程來啟動應用程序的流程圖。如圖1所述,通過 根據本發明實施例的注冊為LAUNCH FAST的第一類型快速啟動進禾呈來啟動應用禾呈序的處理過程主要包纟舌如下的步-驟S102至步驟 S匿
步驟S102,當前應用程序與AMSS完成信息注冊。
例如,在通過存在的已注冊為LAUNCH—FAST的第一類型快 速啟動進程B來啟動當前應用程序之后,將包4舌應用禾呈序啟動標識 的信息發送纟會AMSS,以完成信息注冊。
步驟S104,創建新的第一類型快速啟動進程。
AMSS收到注冊信息后,重新創建一個第一類型快速啟動進程, 例如第一類型快速啟動進程D,以用于下一個應用禾呈序。
步-驟S106,新創建的第一類型快速啟動進程完成第一階賴j壬 務,進入事件循環。
與系統初始化時所創建的快速啟動進程B —樣,上述已創建的 第一類型快速啟動進程D需要完成如下兩個階段的〗壬務之后才向 AMSS注冊為LAUNCH—FAST:第一階,殳任務為^M亍應用程序創建 所需的初始化操作;第二階段任務為執行應用程序窗口所需的初始 化操作。此處,新創建的快速啟動進程D首先完成第一階段的任務, 即執行應用程序創建所需的初始化操作,然后進入事件循環,以等 4寺當前應用禾呈序退出。
步驟S108,當前應用程序退出,觸發已創建的未注冊的第一類 型快速啟動進程完成第二階_歐任務,即執行應用程序窗口所需的初 始4匕才喿作。然后,向AMSS注冊為LAUNCH—FAST的第一類型快 速啟動進禾呈,進入事4牛循環,以等纟寺下一個應用禾呈序的調用。由上可知,由于在凈皮應用程序調用之前,注冊為
LAUNCH_FAST的第 一類型快速啟動進程已完成了應用程序創建 所需的初始化操作和應用程序窗口所需的初始化操作,從而減少了 在調用該進禾呈來啟動應用#呈序時所需的啟動時間。
在上述過程中,可能出現應用禾呈序快速切才奐的情況,也就是, 在當前應用程序退出之后與未注冊的第 一類型快速啟動進程D完成 第二階段任務之前,用戶又發起了新的應用啟動請求,這時,新創 建的第一類型快速啟動進程D尚未完成第二階段的任務,從而沒有 向AMSS注冊為LAUNCH—FAST的第一類型快速啟動進程。在這
行終止已創建的未注冊為LAUNCH—FAST的第一類型快速啟動進 程D,以釋》文相關資源,加快應用程序的啟動,其具體實現過禾呈將 在后續力口以i羊細i也4笛述。
圖2是通過才艮據本發明實施例的注冊為LAUNCH—NORMAL 的第二類型快速啟動進程來啟動應用禾呈序的流程圖。如圖2所示, 通過才艮據本發明實施例的注冊為LAUNCH_NORMAL的第二類型 快速啟動進程來啟動應用禾呈序的處理過禾呈主要包^"如下的步-驟 S202至S210:
步驟S202,系統初始化,創建快速啟動進程A;
步驟S204,進程A創建子進程C (第二類型快速啟動進程);
步驟S206,父進程A主要監控子進程C的狀態;
步驟S208,進禾呈C向AMSS注冊為LAUNCH—NORMAL的快 速啟動進程,然后進入事件循環,以等待祐:調用來啟動應用程序;步驟S210,當子進程C退出時,轉至步驟S204,以重新創建 出一個子進程,即第二類型快速啟動進程,重復上述操作;若子進 程C未退出,則轉至步驟S206。
由于注冊為LAUNCH—NORMAL的第二類型'決速啟動進禾呈C 在被調用之前完成應用程序創建所需的初始化操作,所以減少在調 用進程C來啟動應用程序時所需的啟動時間。
下面將結合實例對本發明實施例的實現過程進行詳細描述。
如圖3所示,才艮據本發明實施例的手才幾應用禾呈序的啟動方法包 4舌如下的步驟S302至步-驟S314:
步-驟S302,用戶發起啟動應用考呈序的諱-求。
當用戶點擊桌面應用圖標,向AMSS發起啟動應用禾呈序的i青求。 由于各快速啟動進程都會向AMSS進行注冊,因此,在AMSS收到 該啟動請求之后,AMSS會才艮據注冊信息選4,相應的快速啟動進程 來供應用考呈序調用。
步驟S304,判斷是否存在注冊為LAUNCH—FAST的第一類型 快速啟動進程。
AMSS首先查4戈注冊為LAUNCH—FAST的第一類型快速啟動 進程是否存在,若存在,則轉至步驟S306;若不存在,則轉至步驟 S308 。 例如,在系統初始時,由于自動生成了注冊為 LAUNCH—FAST的第一類型快速啟動進程B,所以此時如果用戶發 起應用程序的啟動^青求,貝'J可以查找到所需的注冊為 LAUNCH—FAST的第一類型快速啟動進程B, 乂人而4爭至步-驟S306, 以通過注冊為LAUNCH—FAST的第一類型快速啟動進程B來啟動 應用禾呈序。再如,在當前的注冊為LAUNCH—FAST的第一類型快速啟動進程B凈皮調用以啟動當前的應用程序的情況下,AMSS在收 到包含應用程序啟動標識的注冊信息之后,將重新創建一個第一類 型快速啟動進程D,并且該第一類型快速啟動進程D完成了第一P介 段的任務,即執行應用程序創建所需的初始化4喿作。如果發生應用 程序快速切換,即在當前應用程序退出之后與新創建的未注冊的第 一類型快速啟動進程D完成第二階革殳任務之前,用戶又發起了:^步 驟S302中提到的新的應用程序啟動請求,這時,由于#斤創建的第一 類型快速啟動進程D尚未完成第二階段的^f壬務,/人而也未能向 AMSS注冊為LAUNCH—FAST的第一類型快速啟動進禾呈,這才羊,3奪 轉至步驟S308,以進行后續處理,上述的新創建的第一類型快速啟 動進禾呈D 一奪在后續加以描述。
步驟S306, ^!尋注冊為LAUNCH—FAST的第一'決速啟動進禾J/f乍 為應用#呈序的進#呈,啟動應用禾呈序。
由于注冊為LAUNCH—FAST的第一類型快速啟動進程已經完 成了應用創建所需的初始化操作和應用程序窗口所需的初始化操 作,因而為應用程序的啟動節約了更多的時間,使^尋在調用該注冊 為LAUNCH_FAST的第一類型快速啟動進程來啟動應用程序時加 快了應用啟動的速度。此外,如圖1所示,在通過注冊為 LAUNCH—FAST的第 一類型快速啟動進程來啟動當前應用程序之 后,將包括應用程序啟動標識的信息發送給AMSS,以完成信息注 冊。AMSS在收到注冊信息之后,重新創建一個第一類型快速啟動 進程,以用來纟皮后續的應用禾呈序所調用,其具體實if見過程參照上述 關于圖1的描述,在此不再贅述。
步驟S308,將新創建的未注冊為LAUNCH_FAST的第一類型 快速啟動進程強行終止,并轉至步各聚S310。第一類型快速啟動進程D原本需執行第二階段4壬務(即,完成
應用程序窗口所需的初始化操作)以完成注冊,但如果執行該第二
階段任務,將消耗較多的時間并占用大量的CPU資源,以使得當前 請求啟動的應用程序的啟動速度變慢。此時,才艮據本發明實施例的 快速啟動手才幾應用程序的方法可以將新創建的未注冊為 LAUNCH—FAST的第一類型快速啟動進程D強行終止,從而釋力丈 CPU資源,減少啟動時間。進一步,在后續處理(步-驟S312),可 以通過注冊為LAUNCH—NORMAL的第二類型快速啟動進禾呈(例 如,進程C)來啟動該應用禾呈序。
步驟S310,判斷是否存在注冊為LAUNCH—NORMAL的第二 類型快速啟動進程。若存在,則轉至步驟S312;若不存在,則轉至 步驟S314。
步驟S312,通過注冊為LAUNCH—NORMAL的第二類型快速 啟動進程來啟動程序,其具體實現過程可以參照關于上述圖2的描 述,在此不再贅述。由于注冊為LAUNCH—NORMAL的第二類型快 速啟動進禾呈在一皮調用之前完成應用禾呈序創建所需的4刀始4W喿作,所 以減少了在調用該注冊為LAUNCH—NORMAL的第二類型'f夾速啟 動進禾呈來啟動應用禾呈序時所需的啟動時間。
步驟S314,以正常方式啟動應用禾呈序。該正常方式可以采用i見 有技術中的相關方法來實現,在此不再贅述。
從以上的描述中,可以看出,在應用程序快速切換時,4艮據本 發明實施例的手機應用程序的啟動方法在判斷出沒有已注冊的第一 類型快速啟動進程之后強行終止已創建的未注冊的第 一類型快速啟 動進程,并在判斷出存在已注冊的第二類型快速啟動進程之后,使 用該已注冊的第二類型快速啟動進禾呈來啟動新的應用禾呈序。由于在 啟動應用程序時強4亍終止了已創建的未注冊的第一類型快速啟動進程,乂人而釋放CPU資源,減少了啟動時間。jt匕夕卜,由于可以通過已
方式來啟動,從而進一步減少了啟動時間。這樣,解決了現有的4支
體驗差,同時造成系統資源浪費的問題,進而達到了在應用程序快 速切換時加快應用程序啟動的速度,改善用戶體驗的效果。
裝置實施例
根據本發明的實施例,提供了 一種手機應用程序的啟動裝置。
圖4是根據本發明實施例的手機應用程序的啟動裝置。如圖4 所示,該裝置包括接收模塊402,用于接收來自終端的應用程序 的啟動請求以及包括應用程序啟動標識的注冊信息;第 一判斷#莫塊 404,連接至接收模塊402,用于在接收到來自終端的應用程序的啟 動請求之后判斷是否存在已注冊的第一類型快速啟動進程;終止模 塊406,連接至第一判斷模塊404,用于在不存在已注冊的第一類型 快速啟動進程的情況下,纟冬止已創建的未注冊的第一類型快速啟動 進程;啟動模塊410,連接至第一判斷模塊404,用于在存在已注冊 的第一類型快速啟動進程的情況下,通過已注冊的第一類型快速啟 動進禾呈來啟動應用考呈序。
上述裝置進一步包括第二判斷才莫塊408,該第二判斷模塊408 連4妾至終止才莫塊406,用于在終止已創建的未注冊的第一類型快速 啟動進程之后判斷是否存在已注冊的第二類型快速啟動進程。此外, 啟動才莫塊410進一步連接至第二判斷才莫塊408。在存在已注冊的第 二類型快速啟動進程的情況下,啟動模塊410通過已注冊的第二類 型快速啟動進禾呈來啟動應用禾呈序。上述裝置進一步包括連接至接收模塊402的創建才莫塊412。在 收到來自接收模塊402的包含應用程序啟動標識的注冊信息之后, 創建才莫塊412創建新的第 一類型快速啟動進禾呈。
上述裝置進一步包括存儲裝置414,該存4渚裝置414保存已注 冊的第 一類型快速啟動進程和已注冊的第二類型快速啟動進程的狀 態。第一判斷模塊404和第二判斷才莫塊408通過查詢該存儲裝置414 的存儲信息來判斷出是否存在已注冊的第 一類型快速啟動進程或已 注冊的第二類型快速啟動進程。
系鄉克實施例
才艮據本發明的實施例,才是供了 一種手機應用程序的啟動系統。
圖5是根據本發明實施例的手機應用程序的啟動系統。如圖5 所示,該系統包4舌應用管理裝置502,用于監控各應用程序的運 4亍狀態和快速啟動進禾呈的啟動和注冊狀態,上述快速啟動進禾呈包括「 第一類型快速啟動進程和第二類型快速啟動進程;應用啟動裝置 504,用于向應用管理裝置502進行快速啟動進程的注冊,并啟動應 用程序。
上述應用管理裝置502可以包括接收模塊506、存儲模塊508 和發送4莫塊512。上述接收4莫塊506接收來自應用程序的注冊信息、 來自快速啟動進程(例如第一類型快速啟動進程和第二類型快速啟 動進程)的注冊信息和來自應用啟動裝置504的查詢i青求,并爿夸上 述注冊信息發送至存儲模塊508進行存儲,其中,來自應用程序的 注冊信息至少包括應有程序啟動標識,而來自快速啟動進程的注冊 信息至少包括快速啟動進程類型標識,如類型標識為 LAUNCH—FAST或為LAUNCH—NORMAL。上述的發送才莫塊512 連接至存儲模塊508。在接收到來自應用啟動裝置504的查詢^"求之后,應用管理裝置502訪問存儲模塊508,以查詢快速啟動進程 的狀態,如當前存在的已注冊的第一類型快速啟動進程和第二類型 快速啟動進程的狀態,然后,發送模塊512將查詢結果發送纟合應用 啟動裝置504。
上述應用管理裝置502可以進一步包4舌創建才莫塊510,該創建 模塊510連接至接收模塊506,并在收到來自應用程序的包括應用 程序啟動標識的注冊信息之后,創建第一類型快速啟動進程。
上述應用啟動裝置504進一步包括接收模塊402,用于接收 來自終端的應用程序的啟動請求以及和來自應用管理裝置502的查 詢結果;第一判斷模塊404,連接至接收模塊402,用于在接收到來 自終端的應用程序的啟動請求之后4艮據來自應用管理裝置502的查 詢結果判斷是否存在已注冊的第 一 類型快速啟動進程;終止才莫塊 406,連接至第一判斷模塊404,用于在不存在已注冊的第一類型快 速啟動進程的情況下,終止已創建的未注冊的第一類型快速啟動進 程;啟動模塊410,連接至第一判斷模塊404,用于在存在已注冊的 第一類型快速啟動進程的情況下,通過已注冊的第一類型快速啟動 進程來啟動應用程序;發送模塊416,連接至第一判斷模塊404和 下述的第二判斷^^塊408,用于在判決是否存在已注冊的第一或第 二類型快速啟動進禾呈時向應用管理裝置502發送查詢i貪求,以查詢 所述已注冊的第一類型快速啟動進程和所述已注冊的第二類型快速 啟動進程的狀態。
上述應用啟動裝置504進一步包括第二判斷模塊408,該第二 判斷才莫塊408連接至終止4莫塊406,用于在終止已創建的未注冊的 第一類型快速啟動進程之后根據來自應用管理裝置502的查詢結果 來判斷是否存在已注冊的第二類型快速啟動進程。此外,啟動模塊410進一步連接至第二判斷模塊408。在存在 已注冊的第二類型快速啟動進程的情況下,啟動模塊410通過已注 冊的第二類型快速啟動進程來啟動應用程序。
如同在上述本發明方法實施例中所描述的,根據本發明裝置實 施例和系統實施例的第 一 類型快速啟動進程可以注冊為 LAUNCH—FAST,并在被調用前完成以下兩個階段的任務第一階 段任務為執行應用程序創建所需的初始化操作;第二階段任務為執 行應用程序窗口所需的初始化操作,其中,上述的應用程序創建所 需的初始化才喿作和應用程序窗口所需的初始化4喿作為各應用#呈序/> 共的纟喿作。這樣,由于上述兩個階^爻的〗壬務均在啟動應用程序之前 完成,所以減少了在調用第一類型快速啟動進禾呈B來啟動應用考呈序 時所需的啟動時間。
同樣,根據本發明裝置實施例和系統實施例的第二類型快速啟 動進禾呈可以注冊為LAUNCH—NORMAL,并在凈皮調用之前完成應用 程序創建所需的初始化才喿作,以減少在調用進禾呈C來啟動應用禾呈序 時所需的啟動時間。
從以上的描述中,可以看出,在應用程序快速切換時,#4居本 發明實施例的手才幾應用程序的啟動裝置和系統在判斷出沒有已注冊 的第 一類型快速啟動進程之后強行終止已創建的未注冊的第一類型 快速啟動進程,并在判斷出存在已注冊的第二類型快速啟動進考呈之 后,4吏用該已注冊的第二類型快速啟動進程來啟動新的應用禾呈序。 由于在啟動應用程序時強行終止了已創建的未注冊的第 一類型快速 啟動進程,乂人而釋》文CPU資源,減少了啟動時間。此夕卜,由于可以 通過已注冊的第二類型快速啟動進程來啟動應用程序而不是直4妻以 正常的方式來啟動,乂人而進一步減少了啟動時間。這樣,解決了現慢,用戶體驗差,同時造成系統資源浪費的問題,進而達到了在應 用程序快速切換時加快應用程序啟動的速度,改善用戶體驗的效果。
需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計 算機可執行指令的計算機系統中執行,并且,雖然在流程圖中示出 了邏輯順序,^旦是在某些情況下,可以以不同于此處的順序扭J亍所 示出或描述的步-驟。
顯然,本領域的技術人員應該明白,上述的本發明的各才莫塊或 各步-驟可以用通用的計算裝置來實現,它們可以集中在單個的計算 裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們 可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存^f渚
在存儲裝置中由計算裝置來執行,或者將它們分別制作成各個集成
電鴻4莫塊,或者將它們中的多個^^莫塊或步驟制作成單個集成電鴻4莫 塊來實現。這樣,本發明不限制于任何特定的^更件和軟件結合。
以上所述僅為本發明的優選實施例而已,并不用于限制本發明, 對于本領域的技術人員來說,本發明可以有各種更改和變化。凡在 本發明的精神和原則之內,所作的任何修改、等同替換、改進等, 均應包含在本發明的保護范圍之內。
權利要求
1.一種手機應用程序的啟動方法,其特征在于,包括在收到第一應用程序的啟動請求時,判斷是否存在已注冊的第一類型快速啟動進程,如果存在,則通過所述已注冊的第一類型快速啟動進程來啟動所述第一應用程序;如果不存在所述已注冊的第一類型快速啟動進程,則終止已創建的未注冊的第一類型快速啟動進程。
2. 根據權利要求1所述的方法,其特征在于,在所述終止已創建 的未注冊的第一類型快速啟動進程之后,進一步包括判斷是否存在已注冊的第二類型快速啟動進程,如果存 在,則通過所述已注冊的第二類型快速啟動進禾呈來啟動所述第 一應用,呈序。
3. 根據權利要求1所述的方法,其特征在于,所述已注冊的第一 類型快速啟動進程通過如下揭:作來實現在第二應用程序啟動之后,創建第一類型快速啟動進程, 并且所述第一類型快速啟動進程執行第一階,殳任務,其中,所 述第二應用程序在所述第一應用程序之前^^清求啟動,所述第 一階段任務至少包括完成應用程序創建所需的初始化纟喿作;在所述第二應用程序退出之后,所述第一類型快速啟動進 程#丸4于第二階,殳任務,并進4于注冊以成為已注冊的第一類型快 速啟動進程,其中,所述第二階l殳4壬務至少包4舌完成應用禾呈序 窗口所需的#刀始>^#^乍。
4. 才艮據4又利要求1所述的方法,其特;f正在于,所述已創建的未注 冊的第一類型快速啟動進程通過如下操作來實現在第二應用程序啟動之后,創建第一類型快速啟動進程, 并且所述第一類型快速啟動進程執行第一階段任務,其中,所述第二應用程序在所述第一應用程序之前祐:請求啟動,所述第一階段任務至少包括完成應用程序創建所需的初始化才喿作;在所述第二應用程序退出之后與所述第 一類型快速啟動 進程完成第二階l殳任務之前,收到所述第一應用程序的啟動諱-求,所述第一類型快速啟動進程不進4于注冊,其中,所述第二階,殳4壬務至少包4舌完成應用#呈序窗口所需的初始^b4喿作。
5. 根據權利要求1至4任一項所述的方法,其特征在于,所迷已 注冊的第 一類型快速啟動進程在被調用之前至少完成應用程 序創建所需的初始化才喿作和應用程序窗口所需的初始化-操作。
6. 根據權利要求1至4任一項所述的方法,其特征在于,所迷已 注冊的第二類型快速啟動進程在被調用之前至少完成應用程 序創建所需的初始4b^喿作。
7. —種手才幾應用程序的啟動裝置,其特;f正在于,包4舌接收模塊,用于接收來自終端的應用程序的啟動請求以及 包括應用程序啟動標識的注冊信息;第一判斷才莫塊,用于在接收到所述啟動請求之后判斷是否 存在已注冊的第一類型快速啟動進程;終止4莫塊,用于在不存在所述已注冊的第一類型快速啟動 進程的情況下,終止已創建的未注冊的第 一類型快速啟動進 程;啟動才莫塊,用于在存在所述已注冊的第一類型快速啟動進 程的情況下,通過所述已注冊的第 一類型快速啟動進禾呈來啟動 所述應用禾呈序。
8. 根據權利要求7所述的裝置,其特征在于,進一步包括第二判斷模塊,用于在終止已創建的未注冊的第 一類型快 速啟動進程之后判斷是否存在已注冊的第二類型快速啟動進 禾呈,其中,所述啟動才莫塊還用于在存在所述已注冊的第二類型快速 啟動進程的情況下,通過所述已注冊的第二類型快速啟動進禾呈 來啟動所述應用禾呈序。
9. 一種手才幾應用禾呈序的啟動系統,其4爭4正在于,包4舌應用管理裝置,用于監控各應用程序的狀態和各快速啟動 進程的狀態,其中,所述快速啟動進程包括第一類型快速啟動 進程;應用啟動裝置,用于通過所述快速啟動進禾呈來啟動所述應 用程序,其中,所述應用啟動裝置進一步包括,第 一接收才莫塊,用于接收來自終端的第 一應用程序的啟動 請求和來自所述應用管理裝置的查詢結果;第一判斷模塊,用于在接收到所述啟動請求之后根據所述 查詢結果來判斷是否存在已注冊的所述第一類型快速啟動進 程;終止才莫塊,用于在不存在所述已注冊的第一類型快速啟動 進程的情況下,終止已創建的未注冊的第一類型快速啟動進 程;啟動模塊,用于在存在所述已注冊的第一類型快速啟動進 程的情況下,通過所述已注冊的第一類型快速啟動進程來啟動所述應用禾呈序;第一發送才莫塊,用于向所述應用管理裝置發送查詢〗青求以 查詢快速啟動進4呈的4犬態。
10. 根據權利要求9所述的系統,其特征在于,所述應用管理裝置 監控的快速啟動進程還包括第二類型快速啟動進程,而所述應 用啟動裝置進一步包4舌第二判斷模塊,用于在終止已創建的未注冊的第 一類型快 速啟動進程之后才艮據來自所述查詢結果來判斷是否存在已注 冊的第二類型快速啟動進程,其中,所述啟動才莫塊還用于在存在所述已注冊的第二類型快速 啟動進程的情況下,通過所述已注冊的第二類型快速啟動進禾呈 來啟動所述應用禾呈序。
11. 根據權利要求9或IO所述的系統,其特征在于,所述應用管 理裝置進一步包括,第二接收模塊,用于接收來自快速啟動進程的第一注冊信 息、來自應用程序的第二注冊信息以及來自所述應用啟動裝置 的查詢請求,其中,所述第一注冊信息至少包括快速啟動進程 類型標識,所述第二注冊4言息至少包^"應用禾呈序啟動4示識;存儲模塊,用于存儲由所述第二接收模塊接收到的所述注 冊信息;第二發送模塊,用于發送查詢結果給所述應用啟動裝置。
全文摘要
本發明公開了一種手機應用程序的啟動方法、裝置和系統,其中,上述啟動方法包括在收到第一應用程序的啟動請求時,判斷是否存在已注冊的第一類型快速啟動進程,如果存在,則通過已注冊的第一類型快速啟動進程來啟動第一應用程序;如果不存在已注冊的第一類型快速啟動進程,則終止已創建的未注冊的第一類型快速啟動進程。由于在啟動應用程序時強行終止了已創建的未注冊的第一類型快速啟動進程,并可以通過已注冊的第二類型快速啟動進程來啟動應用程序,從而在應用程序快速切換時加快了應用程序啟動的速度,改善了用戶體驗。
文檔編號H04M1/725GK101610316SQ20091016017
公開日2009年12月23日 申請日期2009年7月24日 優先權日2009年7月24日
發明者沙金川 申請人:中興通訊股份有限公司