本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及一種應(yīng)用程序的運行方法及裝置。
背景技術(shù):
隨著終端技術(shù)的發(fā)展以及互聯(lián)網(wǎng)技術(shù)的發(fā)展,在終端上集成的功能越來越多,的各個不同的應(yīng)用負(fù)責(zé)不同的功能。例如,即時聊天軟件負(fù)責(zé)聊天消息的接收和發(fā)送,文檔編輯應(yīng)用負(fù)責(zé)文檔的查看和編輯,支付應(yīng)用負(fù)責(zé)轉(zhuǎn)賬、付款等。用戶開啟一個應(yīng)用在該應(yīng)用的操作界面中處理與該應(yīng)用對應(yīng)的業(yè)務(wù)或功能。
但是,用戶在使用手機等終端中某一個應(yīng)用的過程中,可能也需要啟動另一個應(yīng)用處理相關(guān)業(yè)務(wù),例如,在使用淘寶應(yīng)用進(jìn)行購物并付款時,需要首先在淘寶應(yīng)用中進(jìn)行操作,然后在付款時啟動支付寶應(yīng)用完成付款;再例如,用戶在QQ應(yīng)用中接收到其他用戶發(fā)送的word文檔之后,若需要查看該Word文檔,則需要啟動對應(yīng)的WPS應(yīng)用等來查看該word文檔。
一般來講,在運行一個應(yīng)用A時,若需要啟動另一個應(yīng)用B,需要發(fā)送相應(yīng)的應(yīng)用啟動指令給相應(yīng)的應(yīng)用啟動管理服務(wù),然后加載與應(yīng)用B對應(yīng)的加載項,在所有的加載項加載完成的情況下,才能啟動應(yīng)用B。也就是說,在啟動應(yīng)用程序B時,因為需要加載的加載項較多,導(dǎo)致了在啟動應(yīng)用程序B的過程中耗時較長。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提出了一種應(yīng)用程序的運行方法,可以解決一個應(yīng)用中啟動另外一個應(yīng)用的過程中因為需要加載的加載項較多而導(dǎo)致的應(yīng)用的啟動過程中耗時長、效率低的技術(shù)問題。
一種應(yīng)用程序的運行方法,包括:
檢測應(yīng)用啟動事件,獲取與所述應(yīng)用啟動事件對應(yīng)的應(yīng)用程序作為運行應(yīng)用程序;
根據(jù)預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定與所述運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序;
確定預(yù)設(shè)的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項,加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項;
接收與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的啟動請求,獲取與所述啟動請求對應(yīng)的關(guān)聯(lián)應(yīng)用程序作為目標(biāo)應(yīng)用程序;
加載與所述目標(biāo)應(yīng)用程序?qū)?yīng)的除所述預(yù)加載項之外的剩余加載項啟動所述目標(biāo)應(yīng)用程序。
在其中一個實施例中,所述加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項的步驟之后還包括:
接收與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令;
根據(jù)所述與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令關(guān)閉所述運行應(yīng)用程序,并注銷所述加載的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項。
在其中一個實施例中,所述與運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序不止一個。
在其中一個實施例中,所述確定預(yù)設(shè)的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項的步驟還包括:
根據(jù)所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定每一個關(guān)聯(lián)應(yīng)用程序與所述關(guān)聯(lián)應(yīng)用程序的關(guān)聯(lián)優(yōu)先級;
在該關(guān)聯(lián)應(yīng)用程序的所有加載項中根據(jù)所述關(guān)聯(lián)優(yōu)先級確定預(yù)設(shè)的與所述關(guān)聯(lián)優(yōu)先級對應(yīng)的加載項作為預(yù)加載項。
在其中一個實施例中,所述方法還包括:
記錄在所述運行應(yīng)用程序中啟動每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率,根據(jù)所述在所述運行應(yīng)用程序中啟動所述每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率更新所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表。
此外,還提出了一種應(yīng)用程序的運行裝置。
一種應(yīng)用程序的運行裝置,包括:
關(guān)聯(lián)應(yīng)用程序確定模塊,用于檢測應(yīng)用啟動事件,獲取與所述應(yīng)用啟動事件對應(yīng)的應(yīng)用程序作為運行應(yīng)用程序,根據(jù)預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定與所述運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序;
預(yù)加載項加載模塊,用于確定預(yù)設(shè)的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項,加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項;
目標(biāo)應(yīng)用程序啟動請求接收模塊,用于接收與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的啟動請求,獲取與所述啟動請求對應(yīng)的關(guān)聯(lián)應(yīng)用程序作為目標(biāo)應(yīng)用程序;
應(yīng)用啟動模塊,用于加載與所述目標(biāo)應(yīng)用程序?qū)?yīng)的除所述預(yù)加載項之外的剩余加載項啟動所述目標(biāo)應(yīng)用程序。
在其中一個實施例中,所述預(yù)加載項加載模塊還用于接收與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令;根據(jù)所述與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令關(guān)閉所述運行應(yīng)用程序,并注銷所述加載的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項。
在其中一個實施例中,所述與運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序不止一個。
在其中一個實施例中,所述預(yù)加載項加載模塊還用于根據(jù)所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定每一個關(guān)聯(lián)應(yīng)用程序與所述關(guān)聯(lián)應(yīng)用程序的關(guān)聯(lián)優(yōu)先級;在該關(guān)聯(lián)應(yīng)用程序的所有加載項中根據(jù)所述關(guān)聯(lián)優(yōu)先級確定預(yù)設(shè)的與所述關(guān)聯(lián)優(yōu)先級對應(yīng)的加載項作為預(yù)加載項。
在其中一個實施例中,所述裝置還包括關(guān)聯(lián)關(guān)系更新模塊,用于記錄在所述運行應(yīng)用程序中啟動每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率,根據(jù)所述在所述運行應(yīng)用程序中啟動所述每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率更新所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表。
采用了上述應(yīng)用程序的運行方法和裝置之后,在啟動一個應(yīng)用程序之后,根據(jù)與該應(yīng)用程序關(guān)聯(lián)的可能在該已啟動的應(yīng)用程序在啟動時必須加載的加載項,提前預(yù)加載上述加載項中的部分可提前加載的加載項,然后在該應(yīng)用程序中啟動關(guān)聯(lián)的應(yīng)用程序時,僅需要加載剩余的加載項,也就是說,減少了在啟動應(yīng)用時加載的加載項項數(shù),減少了在啟動應(yīng)用時加載加載項需要耗費的時間,提高了應(yīng)用加載的效率。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
其中:
圖1為一個實施例中一種應(yīng)用程序的運行方法的流程示意圖;
圖2為一個實施例中一種應(yīng)用程序的運行裝置的結(jié)構(gòu)示意圖;
圖3為一個實施例中運行前述應(yīng)用程序的運行方法的計算機設(shè)備的結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
在本實施例中,提出了一種應(yīng)用程序的運行方法,該方法的實現(xiàn)可依賴于計算機程序,該計算機程序可運行于基于馮諾依曼體系的計算機系統(tǒng)之上,該計算機程序可以是應(yīng)用程序啟動和關(guān)閉的管理應(yīng)用程序。該計算機系統(tǒng)可以是運行上述計算機程序的例如智能手機、平板電腦、個人電腦等服務(wù)器或終端。
具體的,如圖1所示,上述應(yīng)用程序的運行方法包括如下步驟S102-S108:
步驟S102:檢測應(yīng)用啟動事件,獲取與所述應(yīng)用啟動事件對應(yīng)的應(yīng)用程序作為運行應(yīng)用程序;
步驟S104:根據(jù)預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定與所述運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序。
在用戶在終端中啟動一個應(yīng)用程序時,在終端的顯示界面上展示與該應(yīng)用程序?qū)?yīng)的操作頁面。一般來講,在啟動了某一個應(yīng)用之后,用戶就可以通過該已經(jīng)啟動的應(yīng)用啟動其他應(yīng)用,或者在該已啟動的應(yīng)用中調(diào)用其他應(yīng)用進(jìn)行相關(guān)操作。
在本實施例中,預(yù)先需要設(shè)置終端上安裝的所有的應(yīng)用程序之間的關(guān)聯(lián)關(guān)系,即在某一個應(yīng)用程序啟動時可能關(guān)聯(lián)啟動的應(yīng)用程序與該應(yīng)用程序之間存在關(guān)聯(lián)關(guān)系。在本實施例中,將終端上所有的安裝的應(yīng)用程序之間的關(guān)聯(lián)關(guān)系用應(yīng)用關(guān)聯(lián)啟動的關(guān)系表來記錄,在該應(yīng)用關(guān)聯(lián)啟動的關(guān)系表中,可以確定與某一個應(yīng)用程序關(guān)聯(lián)的所有的關(guān)聯(lián)應(yīng)用程序。
需要說明的是,在本實施例中,與某一個特定的應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序的數(shù)量為0,也可以是1個,還可以是大于1的任意數(shù)量。
具體的,在一個實施例中,所述與運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序不止一個。
步驟S106:確定預(yù)設(shè)的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項,加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項。
在本實施例中,關(guān)聯(lián)應(yīng)用程序在啟動時需要加載若干個加載項,在本實施例中,對于每一個關(guān)聯(lián)應(yīng)用程序在啟動時需要加載的加載項,設(shè)置其在預(yù)先加載時需要加載的加載項,即與該關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項。
需要說明的是,在本實施例中,每一個關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項是不同的,并且預(yù)加載項是該關(guān)聯(lián)應(yīng)用程序在啟動之前可以預(yù)先進(jìn)行加載的加載項。并且,在運行應(yīng)用程序啟動之后,在關(guān)聯(lián)應(yīng)用程序被啟動之前,通過操作系統(tǒng)的啟動管理服務(wù)加載關(guān)聯(lián)應(yīng)用程序的預(yù)加載項,以便在后續(xù)啟動相應(yīng)的應(yīng)用程序時,因為已經(jīng)加載部分加載項從而使得在啟動應(yīng)用的過程中需要加載的加載項減少,從而提高應(yīng)用啟動的速度。
需要說明的是,在本實施例中,因為關(guān)聯(lián)應(yīng)用程序的預(yù)加載項的加載時為了在運行應(yīng)用程序中啟動關(guān)聯(lián)應(yīng)用程序所做的準(zhǔn)備,因此,若用戶退出上述運行應(yīng)用程序,則說明用戶當(dāng)前不需要再運行應(yīng)用程序中啟動任何關(guān)聯(lián)應(yīng)用程序。為了節(jié)省終端的內(nèi)存資源,在用戶退出上述運行應(yīng)用程序時,也注銷上述預(yù)加載項的加載。
具體的,在一個實施例中,所述加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項的步驟之后還包括:接收與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令;根據(jù)所述與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令關(guān)閉所述運行應(yīng)用程序,并注銷所述加載的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項。
也就是說,在一個應(yīng)用程序被關(guān)閉時,若在該應(yīng)用程序運行的過程中,加載了與該應(yīng)用程序?qū)?yīng)的關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項,則在該應(yīng)用程序被關(guān)閉時,注銷上述已被加載的預(yù)加載項。
進(jìn)一步的,在一個實施例中,與運行應(yīng)用程序?qū)?yīng)的關(guān)聯(lián)應(yīng)用程序有多個,并且,這多個關(guān)聯(lián)應(yīng)用程序在運行應(yīng)用程序中被啟動的概率是不一樣的,例如,在淘寶應(yīng)用中,啟動支付寶應(yīng)用的概率是最大的,而啟動相機應(yīng)用的概率比啟動支付寶應(yīng)用的概率要小。因此,雖然一個運行應(yīng)用程序?qū)?yīng)的關(guān)聯(lián)應(yīng)用程序有多個,但是其對應(yīng)的被啟動的概率不同,為了節(jié)省終端的資源,減少在此過程中加載的預(yù)加載項,并且不影響用戶在運行應(yīng)用程序中啟動關(guān)聯(lián)運行程序的效率,可以針對不同啟動概率的關(guān)聯(lián)應(yīng)用程序設(shè)置不同的加載項。
例如,對于同一個應(yīng)用程序,在其對應(yīng)的啟動概率不同時,其對應(yīng)的預(yù)加載項會根據(jù)其啟動概率的變化而變化,啟動概率高則預(yù)加載的預(yù)加載項的項數(shù)多。
具體的,在一個實施例中,所述確定預(yù)設(shè)的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項的步驟還包括:根據(jù)所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定每一個關(guān)聯(lián)應(yīng)用程序與所述關(guān)聯(lián)應(yīng)用程序的關(guān)聯(lián)優(yōu)先級;在該關(guān)聯(lián)應(yīng)用程序的所有加載項中根據(jù)所述關(guān)聯(lián)優(yōu)先級確定與所述關(guān)聯(lián)優(yōu)先級對應(yīng)的加載項作為預(yù)加載項。
也就是說,在終端中存儲的預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表中,不僅記載了兩個應(yīng)用之間是否存在關(guān)聯(lián)關(guān)系,還記載了關(guān)聯(lián)關(guān)系的優(yōu)先級,即運行應(yīng)用程序?qū)?yīng)的每一個關(guān)聯(lián)應(yīng)用程序與運行應(yīng)用程序?qū)?yīng)的關(guān)聯(lián)優(yōu)先級。
需要說明的是,關(guān)聯(lián)優(yōu)先級可以是用戶手動設(shè)置的,還可以是根據(jù)在運行應(yīng)用程序中啟動一個關(guān)聯(lián)應(yīng)用程序的次數(shù)、頻率以及使用時間來確定的。
進(jìn)一步的,對每一個關(guān)聯(lián)應(yīng)用程序,設(shè)置其在不同的關(guān)聯(lián)優(yōu)先級下對應(yīng)的預(yù)加載項,并且在確定當(dāng)前需要預(yù)加載的所有的預(yù)加載項時,考慮每一個關(guān)聯(lián)應(yīng)用程序的關(guān)聯(lián)優(yōu)先級。
步驟S108:接收與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的啟動請求,獲取與所述啟動請求對應(yīng)的關(guān)聯(lián)應(yīng)用程序作為目標(biāo)應(yīng)用程序。
用戶通過點擊與氣動另一個應(yīng)用程序?qū)?yīng)的按鈕或控件、或鏈接等來想終端中的操作系統(tǒng)的啟動管理服務(wù)發(fā)送啟動一個應(yīng)用程序的啟動請求,或者,運行應(yīng)用程序自動跳轉(zhuǎn)或向操作系統(tǒng)的啟動管理服務(wù)發(fā)送啟動一個應(yīng)用的啟動請求。操作系統(tǒng)的啟動管理服務(wù)接收到的啟動請求對應(yīng)的應(yīng)用程序即為目標(biāo)應(yīng)用程序。
例如,在QQ應(yīng)用中,若用戶接收到其他用戶發(fā)送的word文檔,通過點擊該word文檔來啟動終端中的WPS應(yīng)用或WORD應(yīng)用來查看該接收到的word文檔,用戶點擊該word文檔的操作即向終端中的操作系統(tǒng)的應(yīng)用管理服務(wù)發(fā)送了啟動終端中的WPS應(yīng)用或WORD應(yīng)用的啟動請求。再例如,在淘寶應(yīng)用中用戶在購物結(jié)算的過程中,淘寶應(yīng)用自動向終端發(fā)送啟動支付寶應(yīng)用的啟動請求,然后在支付寶應(yīng)用中完成付款的操作。
需要說明的是,用戶在運行應(yīng)用程序中啟動一個應(yīng)用程序時,若該應(yīng)用程序是運行應(yīng)用程序的一個關(guān)聯(lián)應(yīng)用程序,則執(zhí)行步驟S106-S108,反之,若該應(yīng)用程序不是運行應(yīng)用程序的的任意一個關(guān)聯(lián)應(yīng)用程序,則直接通過操作系統(tǒng)的啟動管理服務(wù)來啟動該應(yīng)用程序。
步驟S110:加載與所述目標(biāo)應(yīng)用程序?qū)?yīng)的除所述預(yù)加載項之外的剩余加載項啟動所述目標(biāo)應(yīng)用程序。
在目標(biāo)應(yīng)用程序是運行應(yīng)用程序的一個關(guān)聯(lián)應(yīng)用程序、且其對應(yīng)的所有的加載項中已經(jīng)有部分的加載項作為預(yù)加載項在步驟S104中已經(jīng)加載完畢了,則在本實施例中,直接通過操作系統(tǒng)的啟動管理服務(wù)加載該目標(biāo)應(yīng)用程序在加載的過程中所有的需要加載的加載項中除了上述已經(jīng)加載的預(yù)加載項之外的所有的剩余的加載項,從而完成目標(biāo)應(yīng)用程序的啟動。
需要說明的是,在本實施例中,若用戶退出該目標(biāo)應(yīng)用程序,但是并沒有退出運行應(yīng)用程序,則說明用戶在繼續(xù)使用運行應(yīng)用程序的過程中,還可能再次啟動目標(biāo)應(yīng)用程序,也就是說,在退出目標(biāo)應(yīng)用程序時,并不是直接注銷與該目標(biāo)應(yīng)用程序?qū)?yīng)的所有的加載項,而是僅注銷該目標(biāo)應(yīng)用程序在步驟S108中加載的剩余加載項,而原來已經(jīng)加載的預(yù)加載項會在退出運行應(yīng)用程序時進(jìn)行注銷。
進(jìn)一步的,每一個用戶在使用的過程中的使用習(xí)慣不同,可能會導(dǎo)致不同的用戶在使用某一個應(yīng)用的過程中可能會啟動的關(guān)聯(lián)應(yīng)用程序時不一樣的。因此,在關(guān)聯(lián)啟動任意一個應(yīng)用時,記錄相應(yīng)的啟動記錄,并根據(jù)啟動記錄對應(yīng)用之間的關(guān)聯(lián)關(guān)系進(jìn)行修改,以便在最大的程度上考慮用戶的使用習(xí)慣并保證在應(yīng)用的關(guān)聯(lián)啟動時的啟動效率。
具體的,在一個實施例中,上述方法還包括:記錄在所述運行應(yīng)用程序中啟動每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率,根據(jù)所述在所述運行應(yīng)用程序中啟動所述每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率更新所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表。
在每一次關(guān)聯(lián)啟動應(yīng)用程序時,記錄該次關(guān)聯(lián)啟動的相關(guān)記錄,并且,根據(jù)記錄的啟動記錄更新預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表。例如,更新關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的關(guān)聯(lián)優(yōu)先級,或者,將某一不是關(guān)聯(lián)應(yīng)用程序的應(yīng)用程序添加到運行應(yīng)用程序的關(guān)聯(lián)應(yīng)用程序列表中去。
此外,如圖2所示,還提出了一種應(yīng)用程序的運行裝置,包括關(guān)聯(lián)應(yīng)用程序確定模塊102、預(yù)加載項加載模塊104、目標(biāo)應(yīng)用程序啟動請求接收模塊106以及應(yīng)用啟動模塊108,其中:
關(guān)聯(lián)應(yīng)用程序確定模塊102,用于檢測應(yīng)用啟動事件,獲取與所述應(yīng)用啟動事件對應(yīng)的應(yīng)用程序作為運行應(yīng)用程序;根據(jù)預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定與所述運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序;
預(yù)加載項加載模塊104,用于確定預(yù)設(shè)的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項,加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項;
目標(biāo)應(yīng)用程序啟動請求接收模塊106,用于接收與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的啟動請求,獲取與所述啟動請求對應(yīng)的關(guān)聯(lián)應(yīng)用程序作為目標(biāo)應(yīng)用程序;
應(yīng)用啟動模塊108,用于加載與所述目標(biāo)應(yīng)用程序?qū)?yīng)的除所述預(yù)加載項之外的剩余加載項啟動所述目標(biāo)應(yīng)用程序。
可選的,在一個實施例中,預(yù)加載項加載模塊104還用于接收與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令;根據(jù)所述與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令關(guān)閉所述運行應(yīng)用程序,并注銷所述加載的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項。
可選的,在一個實施例中,上述與運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序不止一個。
可選的,在一個實施例中,預(yù)加載項加載模塊104還用于根據(jù)所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定每一個關(guān)聯(lián)應(yīng)用程序與所述關(guān)聯(lián)應(yīng)用程序的關(guān)聯(lián)優(yōu)先級;在該關(guān)聯(lián)應(yīng)用程序的所有加載項中根據(jù)所述關(guān)聯(lián)優(yōu)先級確定預(yù)設(shè)的與所述關(guān)聯(lián)優(yōu)先級對應(yīng)的加載項作為預(yù)加載項。
可選的,在一個實施例中,如圖2所示,上述裝置還包括關(guān)聯(lián)關(guān)系更新模塊110,用于記錄在所述運行應(yīng)用程序中啟動每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率,根據(jù)所述在所述運行應(yīng)用程序中啟動所述每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率更新所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表。
采用了上述應(yīng)用程序的運行方法和裝置之后,在啟動一個應(yīng)用程序之后,根據(jù)與該應(yīng)用程序關(guān)聯(lián)的可能在該已啟動的應(yīng)用程序在啟動時必須加載的加載項,提前預(yù)加載上述加載項中的部分可提前加載的加載項,然后在該應(yīng)用程序中啟動關(guān)聯(lián)的應(yīng)用程序時,僅需要加載剩余的加載項,也就是說,減少了在啟動應(yīng)用時加載的加載項項數(shù),減少了在啟動應(yīng)用時加載加載項需要耗費的時間,提高了應(yīng)用加載的效率。
在一個實施例中,如圖3所示,圖3展示了一種運行上述應(yīng)用程序的運行方法的基于馮諾依曼體系的計算機系統(tǒng)的終端。該計算機系統(tǒng)可以是智能手機、平板電腦、掌上電腦、筆記本電腦或個人電腦等終端設(shè)備。具體的,可包括通過系統(tǒng)總線連接的外部輸入接口1001、處理器1002、存儲器1003和輸出接口1004。其中,外部輸入接口1001可選的可至少包括網(wǎng)絡(luò)接口10012。存儲器1003可包括外存儲器10032(例如硬盤、光盤或軟盤等)和內(nèi)存儲器10034。輸出接口1004可至少包括顯示屏10042等設(shè)備。
在本實施例中,本方法的運行基于計算機程序,該計算機程序的程序文件存儲于前述基于馮諾依曼體系的計算機系統(tǒng)的外存儲器10032中,在運行時被加載到內(nèi)存儲器10034中,然后被編譯為機器碼之后傳遞至處理器1002中執(zhí)行,從而使得基于馮諾依曼體系的計算機系統(tǒng)中形成邏輯上的關(guān)聯(lián)應(yīng)用程序確定模塊102、預(yù)加載項加載模塊104、目標(biāo)應(yīng)用程序啟動請求接收模塊106、應(yīng)用啟動模塊108以及關(guān)聯(lián)關(guān)系更新模塊110。且在上述應(yīng)用程序的運行方法執(zhí)行過程中,輸入的參數(shù)均通過外部輸入接口1001接收,并傳遞至存儲器1003中緩存,然后輸入到處理器1002中進(jìn)行處理,處理的結(jié)果數(shù)據(jù)或緩存于存儲器1003中進(jìn)行后續(xù)地處理,或被傳遞至輸出接口1004進(jìn)行輸出。
具體的,在本實施例中,處理器1002用于執(zhí)行如下操作:
檢測應(yīng)用啟動事件,獲取與所述應(yīng)用啟動事件對應(yīng)的應(yīng)用程序作為運行應(yīng)用程序,根據(jù)預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定與所述運行應(yīng)用程序關(guān)聯(lián)的關(guān)聯(lián)應(yīng)用程序;
確定預(yù)設(shè)的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項,加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項;
接收與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的啟動請求,獲取與所述啟動請求對應(yīng)的關(guān)聯(lián)應(yīng)用程序作為目標(biāo)應(yīng)用程序;
加載與所述目標(biāo)應(yīng)用程序?qū)?yīng)的除所述預(yù)加載項之外的剩余加載項啟動所述目標(biāo)應(yīng)用程序。
在可選的實施例中,在處理器1002加載所述與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項的步驟之后,處理器1002還用于接收與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令;根據(jù)所述與所述運行應(yīng)用程序?qū)?yīng)的應(yīng)用程序關(guān)閉指令關(guān)閉所述運行應(yīng)用程序,并注銷所述加載的與所述關(guān)聯(lián)應(yīng)用程序?qū)?yīng)的預(yù)加載項。
在可選的實施例中,處理器1002還用于根據(jù)所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表確定每一個關(guān)聯(lián)應(yīng)用程序與所述關(guān)聯(lián)應(yīng)用程序的關(guān)聯(lián)優(yōu)先級;在該關(guān)聯(lián)應(yīng)用程序的所有加載項中根據(jù)所述關(guān)聯(lián)優(yōu)先級確定預(yù)設(shè)的與所述關(guān)聯(lián)優(yōu)先級對應(yīng)的加載項作為預(yù)加載項。
在可選的實施例中,處理器1002還用于記錄在所述運行應(yīng)用程序中啟動每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率,根據(jù)所述在所述運行應(yīng)用程序中啟動所述每一個關(guān)聯(lián)應(yīng)用程序的次數(shù)和/或頻率更新所述預(yù)設(shè)的應(yīng)用關(guān)聯(lián)啟動的關(guān)系表。
以上所揭露的僅為本發(fā)明較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。