程序。
[0055]可選的,為了避免誤卸載用戶還需要使用的應(yīng)用程序,在調(diào)用卸載應(yīng)用線程卸載選取的應(yīng)用程序之前,電子設(shè)備可以向用戶詢問是否卸載該應(yīng)用程序;或者,電子設(shè)備可以在檢測到該應(yīng)用程序的被使用頻率高于預(yù)定頻率閾值時,向用戶詢問是否卸載該應(yīng)用程序。
[0056]電子設(shè)備在將選取的應(yīng)用程序成功卸載之后,還需要刪除該應(yīng)用程序在電子設(shè)備中的殘留信息,請參見下述步驟207至步驟209。
[0057]在步驟207中,在調(diào)用卸載應(yīng)用線程成功卸載選取的應(yīng)用程序后,從桌面啟動器維護的數(shù)據(jù)庫中刪除在桌面上顯示被卸載的該應(yīng)用程序時所需的記錄。
[0058]桌面啟動器在顯示桌面時,需要通過數(shù)據(jù)庫中存儲的各個應(yīng)用程序的記錄來進行顯示。當(dāng)選取的應(yīng)用程序被成功卸載后,不再需要該應(yīng)用程序的記錄,且為了增加數(shù)據(jù)庫中可用的存儲空間,電子設(shè)備可以將桌面啟動器維護的數(shù)據(jù)庫中與被成功卸載的應(yīng)用程序?qū)?yīng)的記錄進行刪除。
[0059]在步驟208中,刪除被卸載的應(yīng)用程序的桌面圖標(biāo)。
[0060]當(dāng)選取的應(yīng)用程序被成功卸載后,該應(yīng)用程序的桌面圖標(biāo)也隨即失效,電子設(shè)備可以將該應(yīng)用程序的桌面圖標(biāo)進行刪除。
[0061]在步驟209中,將被卸載的應(yīng)用程序從應(yīng)用信息列表中移除。
[0062]為了避免電子設(shè)備由于對已經(jīng)被成功卸載的應(yīng)用程序執(zhí)行卸載操作而出現(xiàn)錯誤,當(dāng)選取的應(yīng)用程序被成功卸載后,電子設(shè)備需要將被卸載的應(yīng)用程序從應(yīng)用信息列表中移除。這樣電子設(shè)備就不會再次從應(yīng)用信息列表中選取到該應(yīng)用程序。
[0063]電子設(shè)備在將被卸載的應(yīng)用程序從應(yīng)用信息列表中移除后,執(zhí)行檢測該應(yīng)用信息列表中是否存在未被卸載的應(yīng)用程序的步驟,也即返回步驟204,并繼續(xù)執(zhí)行步驟204至步驟209。這樣可以使得電子設(shè)備繼續(xù)卸載該信息列表中存在的其它未被卸載的應(yīng)用程序,直到電子設(shè)備將該信息列表中存在的所有未被卸載的應(yīng)用程序卸載完畢。
[0064]可選的,當(dāng)需要卸載的應(yīng)用程序沒有存放在同一個桌面文件夾中時,用戶可以在編輯模式下選擇多個應(yīng)用程序以及多個桌面文件夾后,通過觸發(fā)桌面上的移除控件來產(chǎn)生移除指令。電子設(shè)備在接收到該移除指令后,創(chuàng)建卸載應(yīng)用線程,獲取與被選擇的多個應(yīng)用程序以及多個桌面文件夾中的各個應(yīng)用程序?qū)?yīng)的應(yīng)用信息列表,并通過執(zhí)行上述步驟204至步驟209來依次卸載被選擇的各個應(yīng)用程序。
[0065]綜上所述,本公開實施例中提供的應(yīng)用程序卸載方法,通過在接收到移除文件夾的移除指令后,依次卸載該文件夾中的應(yīng)用程序;由于能夠批量卸載文件夾中的所有應(yīng)用程序,因此解決了一次只能卸載一個應(yīng)用程序,當(dāng)需要大量卸載應(yīng)用程序時,卸載操作步驟較多的問題;達到了簡化卸載操作步驟,提高卸載操作效率的效果。
[0066]另外,通過在調(diào)用卸載應(yīng)用線程成功卸載選取的應(yīng)用程序后,從桌面啟動器維護的數(shù)據(jù)庫中刪除在桌面上顯示被卸載的該應(yīng)用程序時所需的記錄,并刪除被卸載的應(yīng)用程序的桌面圖標(biāo);由于能夠刪除被卸載應(yīng)用程序的殘留信息,因此解決了在卸載應(yīng)用程序后,在電子設(shè)備中依然存在被卸載應(yīng)用程序的信息的問題;達到了提高應(yīng)用程序卸載的完全性。
[0067]為了防止由于某些應(yīng)用程序無法被成功卸載,而導(dǎo)致電子設(shè)備無法結(jié)束卸載應(yīng)用線程,電子設(shè)備可以在未成功卸載選取的應(yīng)用程序,或者在從桌面啟動器維護的數(shù)據(jù)庫中未成功刪除在桌面上顯示被卸載的應(yīng)用程序時所需的記錄時,將該應(yīng)用程序被卸載的次數(shù)加1,記錄該應(yīng)用程序被卸載的次數(shù)。電子設(shè)備在從應(yīng)用信息列表中選取一個未被卸載的應(yīng)用程序后,可以根據(jù)該應(yīng)用程序被卸載的次數(shù)來確定是否禁止對該應(yīng)用程序進行卸載。詳細描述請參見下述步驟301至305,另請參見圖3,其是根據(jù)一示例性實施例示出的一種禁止卸載應(yīng)用程序的流程圖。
[0068]在步驟301中,檢測應(yīng)用信息列表中是否存在未被卸載的應(yīng)用程序。
[0069]電子設(shè)備在檢測應(yīng)用信息列表中是否存在未被卸載的應(yīng)用程序之前,還需要接收移除指令,創(chuàng)建卸載應(yīng)用線程以及獲取應(yīng)用信息列表,相關(guān)的詳細描述可以參見上述圖2所對應(yīng)的實施例中步驟201至步驟203中的描述,這里就不再贅述。
[0070]在步驟302中,若應(yīng)用信息列表中存在未被卸載的應(yīng)用程序,則從應(yīng)用信息列表中選取一個未被卸載的應(yīng)用程序,檢測選取的應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)是否達到預(yù)定卸載閾值。
[0071]為了防止在出現(xiàn)無法卸載的應(yīng)用程序后,使得整個卸載過程出現(xiàn)錯誤,電子設(shè)備可以記錄每個應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù),并在從應(yīng)用信息列表中選取一個未被卸載的應(yīng)用程序后,檢測選取的應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)是否達到預(yù)定卸載閾值。
[0072]這里應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)是指該應(yīng)用程序未被卸載應(yīng)用線程卸載成功的次數(shù),以及該應(yīng)用程序在桌面啟動器維護的數(shù)據(jù)庫中的記錄未被成功刪除的次數(shù)。
[0073]在步驟303中,若選取的應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)達到預(yù)定卸載閾值,則禁止對該應(yīng)用程序進行卸載。
[0074]電子設(shè)備在檢測到選取的應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)達到預(yù)定卸載閾值時,說明該應(yīng)用程序無法被完全卸載,電子設(shè)備可以禁止再次對該應(yīng)用程序進行卸載,使得整個卸載過程能夠成功結(jié)束,而不會產(chǎn)生由于重復(fù)卸載無法被完全卸載的應(yīng)用程序而產(chǎn)生死循環(huán)的問題。
[0075]電子設(shè)備在檢測到選取的應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)達到預(yù)定卸載閾值,可以將該應(yīng)用程序從應(yīng)用信息列表中移除;或者,將該應(yīng)用程序從該卸載應(yīng)用線程還需要卸載的各個應(yīng)用程序所對應(yīng)的列表中移除,以避免該應(yīng)用程序再次被選取進行卸載。
[0076]電子設(shè)備在禁止對該應(yīng)用程序進行卸載后,需要繼續(xù)執(zhí)行檢測應(yīng)用信息列表中是否存在未被卸載的應(yīng)用程序的步驟,也即返回步驟301。
[0077]在步驟304中,若選取的應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)未達到預(yù)定卸載閾值,則調(diào)用卸載應(yīng)用線程卸載選取的應(yīng)用程序。
[0078]電子設(shè)備在檢測到選取的應(yīng)用程序被卸載應(yīng)用線程卸載的次數(shù)未達到預(yù)定卸載閾值時,說明此時選取的應(yīng)用程序可能會被成功卸載,電子設(shè)備可以調(diào)用卸載應(yīng)用線程卸載選取的應(yīng)用程序。
[0079]在步驟305中,在調(diào)用卸載應(yīng)用線程未成功卸載選取的應(yīng)用程序后,則將該應(yīng)用程序被卸載的次數(shù)加I。
[0080]并在步驟305之后,繼續(xù)執(zhí)行檢測應(yīng)用信息列表中是否存在未被卸載的應(yīng)用程序的步驟。
[0081]電子設(shè)備在調(diào)用卸載應(yīng)用線程未成功卸載選取的應(yīng)用程序時,將該應(yīng)用程序的被卸載的次數(shù)加1,并更新記錄的該應(yīng)用程序的被卸載的次數(shù)。
[0082]當(dāng)電子設(shè)備調(diào)用卸載應(yīng)用線程成功卸載選取的應(yīng)用程序后,還需要從桌面啟動器維護的數(shù)據(jù)庫中刪除在桌面上顯示被卸載的該應(yīng)用程序時所需的記錄,刪除被卸載的應(yīng)用程序的桌面圖標(biāo),并且將被卸載的應(yīng)用程序從應(yīng)用信息列表中移除。詳細描述可以參見圖2所對應(yīng)實施例中的步驟207至步驟209,這里就不再贅述。
[0083]需要說明的是,當(dāng)電子設(shè)備無法從桌面啟動器維護的數(shù)據(jù)庫中成功刪除在桌面上顯示被卸載的該應(yīng)用程序時所需的記錄時,也需要將該應(yīng)用程序的被卸載的次數(shù)加1,并更新記錄的該應(yīng)用程序的被卸載的次數(shù)。
[0084]電子設(shè)備在將該應(yīng)用程序的被卸載的次數(shù)加I后,需要繼續(xù)執(zhí)行檢測應(yīng)用信息列表中是否存在未被卸載的應(yīng)用程序的步驟,也即返回步驟301。
[0085]綜上所述,本公開實施例通過在未成功卸載應(yīng)用程序后將該應(yīng)用程序的被卸載的次數(shù)加1,并當(dāng)檢測到獲取的應(yīng)用程序的被卸載的次數(shù)達到預(yù)定卸載閾值時,禁止卸載改應(yīng)用程序;由于能夠禁止卸載無法成功卸載的應(yīng)用程序,因此解決了由于重復(fù)卸載無法成功卸載的應(yīng)用程序而導(dǎo)致整個卸載過程出錯的問題;達到了提高應(yīng)用程序卸載的穩(wěn)定性。
[0086]需要說明的是,上述圖2和圖3所對應(yīng)的實施例中,步驟201至步驟205可以單獨作為一個實施例;步驟201至步驟204和步驟206至步驟207可以單獨作為一個實施例;步驟201至步驟203和步驟301至步驟303可以單獨作為一個實施例;步驟201至203、步驟301、步驟302、步驟304和步驟305可以單獨作為一個實施例;步驟201至步驟204、步驟206和步驟305可以單獨作為一個實施例。在實際實現(xiàn)時,上述圖2和圖3所對應(yīng)的實施例中還可以有其他的步驟組合形成不同的實施例,這里就不再贅述。
[0087]下述為本公開裝置實施例,可以用于執(zhí)行本公開方法實施例。對于本公開裝置實施例中未披露的細節(jié),請參照本公開方法實施例。
[0088]圖4是根據(jù)一不例性實施例不出的一種應(yīng)用程序卸載裝置的框圖,如圖4所不,該應(yīng)用程序卸載裝置可應(yīng)用于電子設(shè)備中,該電子設(shè)備可以是智能手機、平板電腦、智能電視、電子書閱讀器、多媒體播放器、膝上型便攜計算機和臺式計算機等等。該應(yīng)用程序卸載裝置可以包括但不限于:接收模塊401、創(chuàng)建模塊402和卸載模塊403。
[0089]該接收模塊401,被配置為接收用于移除桌面文件夾的移除指令,該桌面文件夾是位于桌面上的包括至少一個已經(jīng)安裝的應(yīng)用程序的文件夾。
[0090]該創(chuàng)建模塊402,被配置為在接收模塊401接收到移除指令后,創(chuàng)建卸載應(yīng)用線程。
[0091]該卸載模塊403,被配置為利用創(chuàng)建模塊402創(chuàng)建的卸載應(yīng)用線