可以先運行監(jiān)控程序的安裝文件,再運行待監(jiān)控的應用的安裝文件,或者還可以運行監(jiān)控程序的安裝文件的同時,運行待監(jiān)控的應用的安裝文件,或者還可以先運行待監(jiān)控的應用的安裝文件,再運行監(jiān)控程序的安裝文件,本實施例對此不進行特別限定。
[0051]這樣,通過獲取待監(jiān)控的應用的安裝狀態(tài),所述安裝狀態(tài)包括安裝成功或安裝失敗,若所述應用的安裝狀態(tài)為安裝失敗,使得能夠運行所述應用的安裝文件,由于能夠重新運行應用的安裝文件,能夠避免現(xiàn)有技術中由于應用的安裝過程中斷而導致的應用的安裝失敗的問題,從而提高了應用安裝的成功率。
[0052]可選地,在本實施例的一個可能的實現(xiàn)方式中,在101中,所獲取的應用的安裝狀態(tài),為安裝成功時,終端才可以運行該應用,以進行應用所提供的業(yè)務,例如,百度地圖、百度導航等。
[0053]可選地,在本實施例的一個可能的實現(xiàn)方式中,在101中,所獲取的應用的安裝狀態(tài),為安裝失敗時,終端則無法運行該應用,以進行應用所提供的業(yè)務,例如,百度地圖、百度導航等。
[0054]可選地,在本實施例的一個可能的實現(xiàn)方式中,在101中,具體可以獲取注冊表數(shù)據(jù),根據(jù)所述注冊表數(shù)據(jù),獲得所述應用的安裝狀態(tài)。
[0055]在一個具體的實現(xiàn)過程中,讀取終端的注冊表數(shù)據(jù),若所述注冊表數(shù)據(jù)中,包括所述應用的指定標識,例如,應用的名稱信息等,則可以說明所述應用的安裝狀態(tài)為安裝成功;若所述注冊表數(shù)據(jù)中,沒有包括所述應用的指定標識,則可以說明所述應用的安裝狀態(tài)為安裝失敗。
[0056]需要說明的是,所述指定標識,可以通過與應用的開發(fā)者進行交流,以確定指示該應用的安裝狀態(tài)為安裝成功的標識信息,進而則可以將能夠指示應用的安裝狀態(tài)為安裝成功的標識信息,預先配置為所述應用的指定標識。
[0057]可選地,在本實施例的一個可能的實現(xiàn)方式中,在101中,具體可以獲取所述應用的安裝路徑下的文件數(shù)據(jù),獲得所述應用的安裝狀態(tài)。
[0058]在一個具體的實現(xiàn)過程中,具體可以讀取終端中所述應用的安裝路徑下的文件數(shù)據(jù),若文件數(shù)據(jù)中包括了所述應用的全部文件,則可以說明所述應用的安裝狀態(tài)為安裝成功;若文件數(shù)據(jù)中只包括了所述應用的部分文件,則可以說的所述應用的安裝狀態(tài)為安裝失敗。
[0059]應用的安裝文件即應用的安裝包,是可自行解壓縮文件的集合,其中包括應用安裝的所有文件。所述應用的安裝文件可以為可執(zhí)行文件(executable file)。具體地,可執(zhí)行文件,是可移植可執(zhí)行(PE)文件格式的文件,它可以加載到內(nèi)存中,并由操作系統(tǒng)加載程序執(zhí)行。可執(zhí)行文件的擴展名可以包括但不限于.eXe、.Sys和.scr,等。運行這個應用的安裝文件,可以將此應用的所有文件釋放到終端的存儲設備如硬盤上,完成修改注冊表、修改系統(tǒng)設置、創(chuàng)建快捷方式等工作。
[0060]例如,APK文件,是一種安卓操作系統(tǒng)上的應用安裝文件格式,其英文全稱為“Applicat1n Package File”。一個安卓應用的代碼想要在裝載安卓操作系統(tǒng)的設備上運行,必須先進行編譯,然后被打包成為一個被安卓操作系統(tǒng)所能識別的文件才可以被運行,而這種能被安卓操作系統(tǒng)識別并運行的文件格式便是APK”。一個APK文件內(nèi)包含清單文件(AndroidManifest.xml) > META-1NFO 文件夾、被編譯的代碼文件(classes, dex)、res 文件夾和資源文件(resources, arse)。其中,APK文件的詳細描述可以參見現(xiàn)有技術中的相關內(nèi)容,此處不再贅述。APK文件實際上是一個ZIP壓縮包。
[0061]在一些情況下,在應用的安裝文件安裝成功或失敗之后,會自動將其對應的安裝文件進行刪除處理,以釋放所占用的終端空間,從而能夠有效提高終端的性能。
[0062]可選地,在本實施例的一個可能的實現(xiàn)方式中,在102之前,還可以進一步進行復制處理,以獲得所述應用的安裝文件。相應地,在102中,所運行的應用的安裝文件可以是終端的存儲設備所存儲的應用的原始安裝文件,或者還可以為對終端的存儲設備所存儲的應用的原始安裝文件進行復制處理所獲得的應用的備份安裝文件,本實施例對此不進行特別限定。
[0063]在一個具體的實現(xiàn)過程中,所述終端的存儲設備可以慢速存儲設備,具體可以為計算機系統(tǒng)的硬盤,或者還可以為手機的非運行內(nèi)存即物理內(nèi)存,例如,只讀存儲器(Read-Only Memory, ROM)和內(nèi)存卡等,本實施例對此不進行特別限定。
[0064]在另一個具體的實現(xiàn)過程中,所述終端的存儲設備還可以為快速存儲設備,具體可以為計算機系統(tǒng)的內(nèi)存,或者還可以為手機的運行內(nèi)存即系統(tǒng)內(nèi)存,例如,隨機存儲器(Random Access Memory, RAM)等,本實施例對此不進行特別限定。
[0065]這樣,能夠避免由于終端的存儲設備所存儲的應用的安裝文件被刪除而導致的獲取不到所要運行的應用的安裝文件的問題,能夠進一步提高應用安裝的成功率。
[0066]可選地,在本實施例的一個可能的實現(xiàn)方式中,在102中,具體可以若所述應用的安裝狀態(tài)為安裝失敗,以無用戶界面形式,運行所述應用的安裝文件。
[0067]這樣,通過以無用戶界面形式,運行所述應用的安裝文件,能夠減少對終端當前所運行的其他應用的影響,從而有效地提高了用戶體驗。
[0068]可選地,在本實施例的一個可能的實現(xiàn)方式中,在102之后,還可以進一步進行自卸載處理。
[0069]可選地,在本實施例的一個可能的實現(xiàn)方式中,若所述應用的安裝狀態(tài)為安裝成功,本實施例所提供的應用的安裝方法還可以進一步進行自卸載處理。
[0070]這樣,通過進行自卸載處理,能夠主動釋放所占用的終端空間,從而有效地提高了終端的性能。
[0071]本實施例中,通過獲取待監(jiān)控的應用的安裝狀態(tài),所述安裝狀態(tài)包括安裝成功或安裝失敗,若所述應用的安裝狀態(tài)為安裝失敗,使得能夠運行所述應用的安裝文件,由于能夠重新運行應用的安裝文件,能夠避免現(xiàn)有技術中由于應用的安裝過程中斷而導致的應用的安裝失敗的問題,從而提高了應用安裝的成功率。
[0072]另外,采用本發(fā)明提供的技術方案,通過進行復制處理,以獲得所述應用的安裝文件,能夠避免由于終端的存儲設備所存儲的應用的安裝文件被刪除而導致的獲取不到所要運行的應用的安裝文件的問題,能夠進一步提高應用安裝的成功率。
[0073]另外,采用本發(fā)明提供的技術方案,通過以無用戶界面形式,運行所述應用的安裝文件,能夠減少對終端當前所運行的其他應用的影響,從而有效地提高了用戶體驗。
[0074]另外,采用本發(fā)明提供的技術方案,通過進行自卸載處理,能夠主動釋放所占用的終端空間,從而有效地提尚了終端的性能。
[0075]另外,采用本發(fā)明提供的技術方案,無需用戶參與,從而提高了應用安裝的效率。
[0076]需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
[0077]在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。
[0078]圖2為本發(fā)明另一實施例提供的應用的安裝裝置的結(jié)構(gòu)示意圖,如圖2所示。本實施例的應用的安裝裝置可以包括獲取單元21和處理單元22。其中,獲取單元21,用于獲取待監(jiān)控的應用的安裝狀態(tài),所述安裝狀態(tài)包括安裝成功或安裝失??;處理單元22,用于若所述應用的安裝狀態(tài)為安裝失敗,運行所述應用的安裝文件。
[0079]需要說明的是,本實施例所提供的應用的安裝裝置的執(zhí)行主體可以為位于本地終端的應用(即不同于所述待監(jiān)控的應用),或者還可以為位于本地終端的應用中的插件或軟件開發(fā)工具包(Software Development Kit, SDK)等功能單元,或者還可以為位于網(wǎng)絡側(cè)的服務