本發(fā)明涉及移動(dòng)終端技術(shù)領(lǐng)域,更具體地,涉及一種下載過(guò)程中主題圖標(biāo)的建立方法和裝置,同時(shí)涉及一種便攜式移動(dòng)終端。
背景技術(shù):
通過(guò)第三方安裝程序進(jìn)行程序安裝時(shí),通常使用軟件靜默安裝。靜默安裝指的是安裝時(shí)無(wú)需任何用戶干預(yù),直接按默認(rèn)設(shè)置安裝,這對(duì)于無(wú)特殊需求的用戶或?qū)④浖捎诎惭b光盤(pán)是較為有效的。靜默安裝也可以稱為無(wú)人值守安裝,在安裝過(guò)程中可以靜默安裝好預(yù)先設(shè)計(jì)集成的一些常用軟件,安裝結(jié)束以后就可以直接使用。在靜默安裝時(shí),為了讓用戶看到下載安裝進(jìn)度,通常的做法是用后臺(tái)運(yùn)行,當(dāng)安裝結(jié)束后彈出窗口提醒,或者在桌面上直接顯示進(jìn)度條。
一種靜默安裝過(guò)程中顯示進(jìn)度的方法是:在啟動(dòng)靜默安裝程序后,每隔預(yù)定時(shí)間對(duì)安裝目錄進(jìn)行掃描以獲得安裝目錄的當(dāng)前大?。粚⑺霎?dāng)前大小與預(yù)定安裝目錄大小進(jìn)行比較以獲得當(dāng)前安裝進(jìn)度并顯示,其中,所述預(yù)定安裝目錄大小通過(guò)下面步驟獲得:在每次程序靜默安裝完成時(shí)獲取該程序該次安裝目錄的總大??;對(duì)安裝目錄的總大小求平均并作為所述預(yù)定安裝目錄大小。上述方法通過(guò)進(jìn)度條的方式顯示安裝進(jìn)度,提升用戶體驗(yàn)。
然而,上述方法不能夠滿足使用桌面主題的用戶,即無(wú)法生成一種能夠與當(dāng)前桌面主題一致的圖標(biāo)。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述問(wèn)題,本發(fā)明提出了一種下載過(guò)程中主題圖標(biāo)的建立方法和相應(yīng)的裝置,其在下載過(guò)程中提供了生成與桌面主題一致的主題圖標(biāo)的方法。
本發(fā)明的另一目的在于提供一種便攜式移動(dòng)終端。
第一方面,本發(fā)明提供了一種下載過(guò)程中主題圖標(biāo)的建立方法,包括如下步驟:
響應(yīng)于用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令,獲取該應(yīng)用程序的圖標(biāo);
根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo);
在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度。
首先,當(dāng)用戶點(diǎn)擊應(yīng)用商店的某個(gè)應(yīng)用程序時(shí),移動(dòng)終端響應(yīng)于用戶的點(diǎn)擊指令,識(shí)別用戶所點(diǎn)擊的應(yīng)用程序,然后從相應(yīng)文件夾中獲取該應(yīng)用程序的圖標(biāo);然后,根據(jù)當(dāng)前用戶所使用的桌面主題生成一個(gè)與預(yù)下載應(yīng)用程序相對(duì)應(yīng)的主題圖標(biāo);最后,在桌面顯示主題圖標(biāo)和下載進(jìn)度。本方案采用識(shí)別桌面主題的方式直接生成對(duì)應(yīng)桌面主題的主題圖標(biāo)而不需要做后序的美化工作,可以提高移動(dòng)終端的工作效率,能夠生成與用戶所使用的桌面主題一致的圖標(biāo),具有美化界面、直觀的效果,提高用戶體驗(yàn)。
結(jié)合第一方面,在第一方面的第一個(gè)實(shí)施例中,在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度的步驟包括如下具體步驟:
在桌面顯示所述主題圖標(biāo);
調(diào)用預(yù)設(shè)形狀函數(shù)獲取所述主題圖標(biāo)的大小、形狀參數(shù);
調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;
獲取當(dāng)前主題圖標(biāo)的下載進(jìn)度,根據(jù)所述預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;
覆蓋所述灰色進(jìn)度遮罩到所述主題圖標(biāo)上。
在桌面顯示主題圖標(biāo)后,還需要直觀的顯示下載進(jìn)度。步驟包括如下:首先在桌面顯示生成的主題圖標(biāo);繼而調(diào)用預(yù)設(shè)形狀函數(shù)獲取主題圖標(biāo)的大小、形狀參數(shù)為生成與主題圖標(biāo)大小、形狀一致的灰色遮罩做準(zhǔn)備;繼而調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;繼而通過(guò)讀取文件夾的方式獲得當(dāng)前的下載進(jìn)度,并采用預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;最后覆蓋該灰色進(jìn)度遮罩到所述主題圖標(biāo)上,從而通過(guò)刷新方式達(dá)到動(dòng)態(tài)顯示下載進(jìn)度的效果。采用這種方法顯示下載進(jìn)度具有直觀的效果,提升用戶體驗(yàn)。
結(jié)合第一方面,在第一方面的第二個(gè)實(shí)施例中,調(diào)用刷新函數(shù)刷新覆蓋在該主題圖標(biāo)上的灰色進(jìn)度遮罩,以根據(jù)所述灰色進(jìn)度遮罩跟蹤該應(yīng)用程序的下載進(jìn)度。
在裁剪完灰色遮罩生成灰色進(jìn)度遮罩后,需要將灰色進(jìn)度遮罩覆蓋到主題圖標(biāo)上,需要刷新覆蓋在主題圖標(biāo)上的隨著進(jìn)度增加而逐漸變小的灰色進(jìn)度遮罩,從而顯示出動(dòng)態(tài)效果,提升用戶體驗(yàn)。
結(jié)合第一方面的第二個(gè)實(shí)施例,當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。
在滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩,從而節(jié)約刷新操作占據(jù)過(guò)多的系統(tǒng)內(nèi)存,提升用戶體驗(yàn)。
結(jié)合第一方面的第二個(gè)實(shí)施例,所述預(yù)設(shè)條件包括以下任意一項(xiàng):
當(dāng)前桌面置于后臺(tái);
當(dāng)前桌面正處于滑動(dòng)頁(yè)面;
當(dāng)前桌面正處于編輯模式;
當(dāng)前桌面正在執(zhí)行動(dòng)畫(huà);
當(dāng)前正在執(zhí)行拖拽動(dòng)作;
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。
在本實(shí)施例中,設(shè)置預(yù)設(shè)條件對(duì)所述應(yīng)用程序圖標(biāo)進(jìn)行刷新,從而減少不必要的刷新操作,節(jié)約系統(tǒng)內(nèi)存,保證系統(tǒng)運(yùn)行流暢,從而提升用戶體驗(yàn)。如下所述:
當(dāng)前桌面置于后臺(tái)時(shí),用戶沒(méi)有必要正在桌面上顯示的下載進(jìn)度,此時(shí)可以免去刷新操作。
當(dāng)前桌面正處于滑動(dòng)頁(yè)面時(shí),用戶可能關(guān)注的重點(diǎn)并不是下載進(jìn)度,此時(shí)可以省略刷新操作。
當(dāng)前桌面正處于編輯模式時(shí),例如用戶在添加小工具、選壁紙以及進(jìn)入桌面設(shè)置時(shí),為避免桌面上有過(guò)多操作而停止刷新操作。
當(dāng)前桌面正處于執(zhí)行動(dòng)畫(huà)時(shí),刷新圖標(biāo)的操作是一個(gè)低優(yōu)先級(jí)操作,為執(zhí)行高優(yōu)先級(jí)的桌面動(dòng)畫(huà)而停止刷新灰色進(jìn)度遮罩。
當(dāng)前正在執(zhí)行拖拽動(dòng)作時(shí),調(diào)用相應(yīng)函數(shù)檢測(cè)當(dāng)前桌面上是否有應(yīng)用程序的圖標(biāo)正處于拖拽動(dòng)作,當(dāng)有拖拽動(dòng)作時(shí)圖標(biāo)處于滑動(dòng)狀態(tài),此時(shí)為避免桌面上有過(guò)多操作而停止刷新灰色進(jìn)度遮罩。當(dāng)在應(yīng)用商店中選定一個(gè)應(yīng)用程序下載時(shí),會(huì)在桌面上創(chuàng)建一個(gè)該應(yīng)用的快捷方式(Shortcut)的View,同時(shí)將該應(yīng)用的包名、圖標(biāo)以及應(yīng)用名存儲(chǔ)在桌面的數(shù)據(jù)庫(kù)中,本發(fā)明的刷新機(jī)制是在以下條件時(shí)停止刷新:
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi),即當(dāng)前該快捷方式的View在文件夾內(nèi)且文件夾關(guān)閉或者當(dāng)前該View不在正在打開(kāi)的文件內(nèi)。
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài),即當(dāng)前該快捷方式的View在桌面或者Hotseat,且文件夾處于打開(kāi)狀態(tài)。
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。即當(dāng)前該快捷方式的View在桌面或者Hotseat,且該View所在的Screen不在當(dāng)前桌面所處的Screen。
在當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi)、當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài)。
結(jié)合第一方面的第二個(gè)實(shí)施例,當(dāng)檢測(cè)不滿足預(yù)設(shè)條件時(shí)調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩。
當(dāng)不滿足預(yù)設(shè)條件時(shí),調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩,從而繼續(xù)顯示下載進(jìn)度,從而提升用戶體驗(yàn)。
結(jié)合第一方面,在第一方面的第三個(gè)實(shí)施例,計(jì)算所述灰色遮罩的面積,當(dāng)所述應(yīng)用程序下載進(jìn)度變化時(shí),按照下載進(jìn)度占總進(jìn)度的比例相應(yīng)地對(duì)所述灰色遮罩裁剪掉同等比例的面積以生成灰色進(jìn)度遮罩。
本領(lǐng)域內(nèi)技術(shù)人員可以理解,裁剪掉的灰色遮罩的面積占總的灰色遮罩的面積的比例與當(dāng)前下載量占總下載量的比例一致,根據(jù)這種比例關(guān)系所計(jì)算出來(lái)的需要裁剪的比例和需要裁剪的面積準(zhǔn)確、可靠。
結(jié)合第一方面,在第一方面的第四個(gè)實(shí)施例,所述裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩的方式包括扇形裁剪和條形裁剪。
結(jié)合第一方面,在第一方面的第五個(gè)實(shí)施例,所述灰色遮罩為半透明遮罩。
采用半透明的灰色遮罩具有直觀的效果,在顯示進(jìn)度的同時(shí)還能夠顯示圖標(biāo)的形狀和大小,因此可以提高用戶體驗(yàn)。
結(jié)合第一方面,在第一方面的第六個(gè)實(shí)施例,所述灰色遮罩層位于頂層,所述主題圖標(biāo)層位于所述灰色遮罩層的下一層。
本發(fā)明以主題桌面為背景,依次疊加主題圖標(biāo)層和灰色遮罩層,灰色遮罩層位于主題圖標(biāo)層的頂部,主題圖標(biāo)層位于灰色遮罩層和桌面背景的中間層。
結(jié)合第一方面,在第一方面的第七個(gè)實(shí)施例:
接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令;
根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或應(yīng)用商店,改變應(yīng)用程序的下載進(jìn)度。
根據(jù)應(yīng)用商店或者桌面的任何一個(gè)對(duì)主題圖標(biāo)的改變進(jìn)度指令,例如暫停、取消等指令,根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或者應(yīng)用商店,從而完成暫停下載傳輸或停止傳輸并刪除,從而改變應(yīng)用程序的下載進(jìn)度。
結(jié)合第一方面,在第一方面的第八個(gè)實(shí)施例,在調(diào)用刷新函數(shù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),在所述主題圖標(biāo)下方顯示進(jìn)度條。
在調(diào)用刷新函數(shù)刷新在主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),可同時(shí)顯示下載進(jìn)度條,從而達(dá)到雙重顯示的效果,使得顯示效果更為直觀。
第二方面,本發(fā)明實(shí)施例提供了一種下載過(guò)程中主題圖標(biāo)的建立裝置,該下載過(guò)程中主題圖標(biāo)的建立裝置具有實(shí)現(xiàn)上述第一方面中下載過(guò)程中主題圖標(biāo)的建立方法的功能。所述功能可以通過(guò)硬件實(shí)現(xiàn),也可以通過(guò)硬件執(zhí)行相應(yīng)的軟件實(shí)現(xiàn)。所述硬件或軟件包括一個(gè)或多個(gè)與上述功能相對(duì)應(yīng)的模塊,包括如下單元:
獲取單元,用于響應(yīng)于用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令,獲取該應(yīng)用程序的圖標(biāo);
生成單元,用于根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo);
顯示單元,用于在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度。
首先,獲取單元用于當(dāng)用戶點(diǎn)擊應(yīng)用商店的某個(gè)應(yīng)用程序時(shí),移動(dòng)終端響應(yīng)于用戶的點(diǎn)擊指令,識(shí)別用戶所點(diǎn)擊的應(yīng)用程序,然后從相應(yīng)文件夾中獲取該應(yīng)用程序的圖標(biāo);然后,生成單元根據(jù)當(dāng)前用戶所使用的桌面主題生成一個(gè)與預(yù)下載應(yīng)用程序相對(duì)應(yīng)的主題圖標(biāo);最后,顯示單元在桌面顯示主題圖標(biāo)和下載進(jìn)度。本方案采用識(shí)別桌面主題的方式直接生成對(duì)應(yīng)桌面主題的主題圖標(biāo)而不需要做后序的美化工作,可以提高移動(dòng)終端的工作效率,能夠生成與用戶所使用的桌面主題一致的圖標(biāo),具有美化界面、直觀的效果,提高用戶體驗(yàn)。
結(jié)合第二方面,在第二方面的第一個(gè)實(shí)施例中,所述顯示單元具體包括如下模塊:
桌面顯示模塊,用于在桌面顯示所述主題圖標(biāo);
參數(shù)獲取模塊,用于調(diào)用預(yù)設(shè)形狀函數(shù)獲取所述主題圖標(biāo)的大小、形狀參數(shù);
繪制模塊,用于調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;
裁剪模塊,用于獲取當(dāng)前主題圖標(biāo)的下載進(jìn)度,根據(jù)所述預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;
覆蓋模塊,用于覆蓋所述灰色進(jìn)度遮罩到所述主題圖標(biāo)上。
在桌面顯示主題圖標(biāo)后,還需要直觀的顯示下載進(jìn)度。顯示單元具體包括:桌面顯示模塊,用于在桌面顯示生成的主題圖標(biāo);參數(shù)獲取單元,用于調(diào)用預(yù)設(shè)形狀函數(shù)獲取主題圖標(biāo)的大小、形狀參數(shù)為生成與主題圖標(biāo)大小、形狀一致的灰色遮罩做準(zhǔn)備;繪制模塊,用于調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;裁剪模塊,用于通過(guò)讀取文件夾的方式獲得當(dāng)前的下載進(jìn)度,并采用預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;覆蓋模塊,用于覆蓋該灰色進(jìn)度遮罩到所述主題圖標(biāo)上,從而通過(guò)刷新方式達(dá)到動(dòng)態(tài)顯示下載進(jìn)度的效果。采用這種方法顯示下載進(jìn)度具有直觀的效果,提升用戶體驗(yàn)。
結(jié)合第二方面,在第二方面的第二個(gè)實(shí)施例中,調(diào)用刷新函數(shù)刷新覆蓋在該主題圖標(biāo)上的灰色進(jìn)度遮罩,以根據(jù)所述灰色進(jìn)度遮罩跟蹤該應(yīng)用程序的下載進(jìn)度。
在裁剪完灰色遮罩生成灰色進(jìn)度遮罩后,需要將灰色進(jìn)度遮罩覆蓋到主題圖標(biāo)上,需要刷新覆蓋在主題圖標(biāo)上的隨著進(jìn)度增加而逐漸變小的灰色進(jìn)度遮罩,從而顯示出動(dòng)態(tài)效果,提升用戶體驗(yàn)。
結(jié)合第二方面的第二個(gè)實(shí)施例,當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。
在滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩,從而節(jié)約刷新操作占據(jù)過(guò)多的系統(tǒng)內(nèi)存,提升用戶體驗(yàn)。
結(jié)合第二方面的第二個(gè)實(shí)施例,所述預(yù)設(shè)條件包括以下任意一項(xiàng):
當(dāng)前桌面置于后臺(tái);
當(dāng)前桌面正處于滑動(dòng)頁(yè)面;
當(dāng)前桌面正處于編輯模式;
當(dāng)前桌面正在執(zhí)行動(dòng)畫(huà);
當(dāng)前正在執(zhí)行拖拽動(dòng)作;
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。
在本實(shí)施例中,設(shè)置預(yù)設(shè)條件對(duì)所述應(yīng)用程序圖標(biāo)進(jìn)行刷新,從而減少不必要的刷新操作,節(jié)約系統(tǒng)內(nèi)存,保證系統(tǒng)運(yùn)行流暢,從而提升用戶體驗(yàn)。如下所述:
當(dāng)前桌面置于后臺(tái)時(shí),用戶沒(méi)有必要正在桌面上顯示的下載進(jìn)度,此時(shí)可以免去刷新操作;
當(dāng)前桌面正處于滑動(dòng)頁(yè)面時(shí),用戶可能關(guān)注的重點(diǎn)并不是下載進(jìn)度,此時(shí)可以省略刷新操作;
當(dāng)前桌面正處于編輯模式時(shí),例如用戶在添加小工具、選壁紙以及進(jìn)入桌面設(shè)置時(shí),為避免桌面上有過(guò)多操作而停止刷新操作;
當(dāng)前桌面正處于執(zhí)行動(dòng)畫(huà)時(shí),刷新圖標(biāo)的操作是一個(gè)低優(yōu)先級(jí)操作,為執(zhí)行高優(yōu)先級(jí)的桌面動(dòng)畫(huà)而停止刷新灰色進(jìn)度遮罩;當(dāng)前正在執(zhí)行拖拽動(dòng)作時(shí),通過(guò)調(diào)用函數(shù)檢測(cè)當(dāng)前桌面上是否有應(yīng)用程序的圖標(biāo)正處于拖拽動(dòng)作,當(dāng)有拖拽動(dòng)作時(shí)圖標(biāo)處于滑動(dòng)狀態(tài),此時(shí)為避免桌面上有過(guò)多操作而停止刷新灰色進(jìn)度遮罩;
當(dāng)在應(yīng)用商店中選定一個(gè)應(yīng)用程序下載時(shí),會(huì)在桌面上創(chuàng)建一個(gè)該應(yīng)用的快捷方式(Shortcut)的View,同時(shí)將該應(yīng)用的包名、圖標(biāo)以及應(yīng)用名存儲(chǔ)在桌面的數(shù)據(jù)庫(kù)中,本發(fā)明的刷新機(jī)制是在以下條件時(shí)停止刷新:
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。
結(jié)合第二方面的第二個(gè)實(shí)施例,當(dāng)檢測(cè)不滿足預(yù)設(shè)條件時(shí)調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩。
當(dāng)不滿足預(yù)設(shè)條件時(shí),調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩,從而繼續(xù)顯示下載進(jìn)度,從而提升用戶體驗(yàn)
結(jié)合第二方面,在第二方面的第三個(gè)實(shí)施例中,計(jì)算所述灰色遮罩的面積,當(dāng)所述應(yīng)用程序下載進(jìn)度變化時(shí),按照下載進(jìn)度占總進(jìn)度的比例相應(yīng)地對(duì)所述遮罩裁剪掉同等比例的面積以生成灰色進(jìn)度遮罩。
本領(lǐng)域內(nèi)技術(shù)人員可以理解,裁剪掉的灰色遮罩的面積占總的灰色遮罩的面積的比例與當(dāng)前下載量占總下載量的比例一致,根據(jù)這種比例關(guān)系所計(jì)算出來(lái)的需要裁剪的比例和需要裁剪的面積準(zhǔn)確、可靠。
結(jié)合第二方面,在第二方面的第四個(gè)實(shí)施例中,所述裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩的方式包括扇形裁剪和條形裁剪。
結(jié)合第二方面,在第二方面的第五個(gè)實(shí)施例中,所述遮罩層為半透明遮罩。
采用半透明的灰色遮罩具有直觀的效果,在顯示進(jìn)度的同時(shí)還能夠顯示圖標(biāo)的形狀和大小,因此可以提高用戶體驗(yàn)。
結(jié)合第二方面,在第二方面的第六個(gè)實(shí)施例中,所述遮罩層位于頂層,所述圖標(biāo)層位于所述遮罩層的下一層。
根據(jù)應(yīng)用商店或者桌面的任何一個(gè)對(duì)主題圖標(biāo)的改變進(jìn)度指令,例如暫停、取消等指令,根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或者應(yīng)用商店,從而完成暫停下載傳輸或停止傳輸并刪除,從而改變應(yīng)用程序的下載進(jìn)度。
結(jié)合第二方面,在第二方面的第七個(gè)實(shí)施例中,還包括如下單元:
接收單元,用于接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令;
回調(diào)單元,用于根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或應(yīng)用商店,改變應(yīng)用程序的下載進(jìn)度。
接收單元用于接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令例如暫停、取消等指令,回調(diào)單元用于根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或者應(yīng)用商店,從而完成暫停下載傳輸或停止傳輸并刪除,從而改變應(yīng)用程序的下載進(jìn)度。
結(jié)合第二方面,在第二方面的第八個(gè)實(shí)施例中,在調(diào)用刷新函數(shù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),在所述主題圖標(biāo)下方顯示進(jìn)度條。
在調(diào)用刷新函數(shù)刷新在主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),可同時(shí)顯示下載進(jìn)度條,從而達(dá)到雙重顯示的效果,使得顯示效果更為直觀。
第三方面,本發(fā)明還提供了一種便攜式移動(dòng)終端,其特征在于,包括:
觸敏顯示器,用于感知操作指令并根據(jù)該指令顯示相應(yīng)的界面;
存儲(chǔ)器,用于存儲(chǔ)支持收發(fā)裝置執(zhí)行上述下載過(guò)程中主題圖標(biāo)的建立方法的程序;
通信接口,用于上述下載過(guò)程中主題圖標(biāo)的建立裝置與其他設(shè)備或通信網(wǎng)絡(luò)通信;
一個(gè)或多個(gè)處理器,用于執(zhí)行所述存儲(chǔ)器中存儲(chǔ)的程序;
一個(gè)或多個(gè)應(yīng)用程序,其中所述一個(gè)或多個(gè)應(yīng)用程序被存儲(chǔ)在所述存儲(chǔ)器中并被配置為由所述一個(gè)或多個(gè)處理器執(zhí)行,所述一個(gè)或多個(gè)程序被配置為用于執(zhí)行任何下載過(guò)程中主題圖標(biāo)的建立方法。
在一個(gè)可能的設(shè)計(jì)中,下載過(guò)程中主題圖標(biāo)的建立裝置的結(jié)構(gòu)中包括處理器和存儲(chǔ)器,所述存儲(chǔ)器用于存儲(chǔ)支持收發(fā)裝置執(zhí)行上述方法的程序,所述處理器被配置為用于執(zhí)行所述存儲(chǔ)器中存儲(chǔ)的程序。所述下載過(guò)程中主題圖標(biāo)的建立裝置還可以包括通信接口,用于下載過(guò)程中主題圖標(biāo)的建立裝置與其他設(shè)備或通信網(wǎng)絡(luò)通信。
第四方面,本發(fā)明實(shí)施例提供了一種計(jì)算機(jī)存儲(chǔ)介質(zhì),用于儲(chǔ)存為上述下載過(guò)程中主題圖標(biāo)的建立裝置所用的計(jì)算機(jī)軟件指令,其包含用于執(zhí)行上述方面為下載過(guò)程中主題突變的建立裝置所設(shè)計(jì)的程序。
相對(duì)于現(xiàn)有技術(shù),本發(fā)明提供的方案,本方案采用識(shí)別桌面主題的方式直接生成對(duì)應(yīng)桌面主題的主題圖標(biāo)而不需要做后序的美化工作,可以提高移動(dòng)終端的工作效率,能夠生成與用戶所使用的桌面主題一致的圖標(biāo),用戶使用移動(dòng)終端從應(yīng)用商店下載應(yīng)用程序時(shí),可以直接生成對(duì)應(yīng)于當(dāng)前桌面主題的圖標(biāo),本方案具有美化人機(jī)界面、顯示直觀的效果,提高用戶體驗(yàn)。
本發(fā)明的這些方面或其他方面在以下實(shí)施例的描述中會(huì)更加簡(jiǎn)明易懂。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種下載過(guò)程中主題圖標(biāo)的建立方法流程圖。
圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種下載過(guò)程中主題圖標(biāo)的顯示方法流程圖。
圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種下載過(guò)程中接收到進(jìn)度改變指令并執(zhí)行操作的流程圖。
圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種下載過(guò)程中主題圖標(biāo)的建立裝置框圖。
圖5示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種下載過(guò)程中顯示單元框圖。
圖6示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種下載過(guò)程中接收到進(jìn)度改變指令并執(zhí)行操作的框圖。
圖7示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的一種便攜式移動(dòng)終端框圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述。
在本發(fā)明的說(shuō)明書(shū)和權(quán)利要求書(shū)及上述附圖中的描述的一些流程中,包含了按照特定順序出現(xiàn)的多個(gè)操作,但是應(yīng)該清楚了解,這些操作可以不按照其在本文中出現(xiàn)的順序來(lái)執(zhí)行或并行執(zhí)行,操作的序號(hào)如101、102等,僅僅是用于區(qū)分開(kāi)各個(gè)不同的操作,序號(hào)本身不代表任何的執(zhí)行順序。另外,這些流程可以包括更多或更少的操作,并且這些操作可以按順序執(zhí)行或并行執(zhí)行。需要說(shuō)明的是,本文中的“第一”、“第二”等描述,是用于區(qū)分不同的消息、設(shè)備、模塊等,不代表先后順序,也不限定“第一”和“第二”是不同的類型。
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
在本發(fā)明中用到的名詞解釋如下:
下載指令,是指用戶點(diǎn)擊的對(duì)應(yīng)用程序的下載指令,具體的可以是單擊操作,響應(yīng)于該指令,系統(tǒng)能夠獲得用戶想要下載軟件的需求,從而對(duì)應(yīng)用程序進(jìn)行下載。
主題樣式,是一種具有美觀效果的顯示圖標(biāo)的樣式,用戶可以自己選用一種主題樣式來(lái)美化自己的桌面,例如所有的應(yīng)用程序圖標(biāo)都改成水果形狀。
主題圖標(biāo),是指根據(jù)當(dāng)前桌面主題的主題樣式生成的主題圖標(biāo),系統(tǒng)讀取桌面主題的文件夾,從文件夾中找到一個(gè)合適的圖標(biāo),例如在一個(gè)水果為主題桌面的相應(yīng)文件夾中找到當(dāng)前預(yù)下載的應(yīng)用程序?qū)?yīng)的水果圖案作為其主題圖標(biāo)。主題圖標(biāo)不同于正常圖標(biāo),是一種與正在使用的桌面主題一致的圖標(biāo)。
預(yù)設(shè)形狀函數(shù),在本發(fā)明的系統(tǒng)中預(yù)設(shè)了很多預(yù)設(shè)函數(shù),其中包括預(yù)設(shè)形狀函數(shù),例如建立一個(gè)函數(shù),利用該函數(shù)調(diào)用相關(guān)接口,通過(guò)計(jì)算預(yù)下載的應(yīng)用程序獲取對(duì)應(yīng)的主題圖標(biāo)的高度和寬度,以及形狀,從而生成與主題圖標(biāo)形狀、大小一致的灰色遮罩。
預(yù)設(shè)繪圖函數(shù),利用預(yù)設(shè)的繪圖函數(shù)生成與主題圖標(biāo)大小、形狀一致的灰色遮罩,例如預(yù)設(shè)采用Paint類中的setColor函數(shù)對(duì)圖標(biāo)進(jìn)行剪切,函數(shù)頭為setColor(int color),用該函數(shù)可以設(shè)置繪制顏色,其顏色使用顏色值來(lái)表示,該顏色值包括透明度參數(shù)和RGB顏色參數(shù)。
預(yù)設(shè)裁剪函數(shù),調(diào)用開(kāi)源的Andriod源代碼,應(yīng)用Paint類,例如預(yù)設(shè)采用setXfermode(new(PorterDuff.Mode.DST_IN))函數(shù)可以對(duì)遮罩進(jìn)行裁剪,例如用AvoidXfermode子類可以設(shè)置顏色和容差,強(qiáng)制Paint在其范圍內(nèi)進(jìn)行繪圖;又如PixelXorXfermode子類可以在覆蓋已有的顏色時(shí),應(yīng)用一個(gè)簡(jiǎn)單的像素XOR操作;又如PorterDuffXfermode子類是一種轉(zhuǎn)換模式,使用其可以使用圖像合成的16條Porter-Duff規(guī)則的任意一條來(lái)控制Paint如何與已有的Canvas畫(huà)布圖像進(jìn)行交互。在本發(fā)明中,通過(guò)PorterDuffXfermode子類可以剪切灰色遮罩,依據(jù)讀取文件夾的方式獲取進(jìn)度,然后通過(guò)Paint與已有的灰色遮罩進(jìn)行交互,以裁剪出符合當(dāng)前下載進(jìn)度的灰色進(jìn)度遮罩。
灰色遮罩,在本發(fā)明中是指采用預(yù)設(shè)繪圖函數(shù)繪制出來(lái)的與主題圖標(biāo)大小、形狀一致的灰色的遮罩,優(yōu)選設(shè)置為透明色,當(dāng)將其繪制到主題圖標(biāo)上時(shí),主題圖標(biāo)呈現(xiàn)灰色,當(dāng)?shù)却螺d時(shí)使用該灰色遮罩覆蓋在主題圖標(biāo)上,當(dāng)隨著下載進(jìn)度刷新時(shí),該灰色遮罩被灰色進(jìn)度遮罩替換,此時(shí)主題圖標(biāo)呈現(xiàn)出動(dòng)態(tài)的逐漸顯示主題圖標(biāo)的效果。
灰色進(jìn)度遮罩,下載進(jìn)度主要依據(jù)讀取文件夾的方式,讀取預(yù)下載的應(yīng)用程序已經(jīng)下載到本地的文件夾的數(shù)據(jù)量,然后將該數(shù)據(jù)量與該應(yīng)用程序的總的數(shù)據(jù)量進(jìn)行比較而得到一個(gè)比例值,本領(lǐng)域內(nèi)技術(shù)人員可以理解,該比例值隨著下載進(jìn)度的增加而不斷變大,而灰色遮罩需要裁剪的面積占灰色遮罩總面積的比例值與該比例值一致,裁減掉一部分的灰色遮罩成為灰色進(jìn)度遮罩。
本發(fā)明的應(yīng)用環(huán)境為移動(dòng)終端,應(yīng)用商店能夠提供一系列應(yīng)用程序,當(dāng)用戶想在移動(dòng)終端上使用某個(gè)應(yīng)用程序中,可以到應(yīng)用商店中下載,通過(guò)操作移動(dòng)終端選定某個(gè)應(yīng)用程序后,應(yīng)用商店就會(huì)自動(dòng)的傳輸該應(yīng)用程序的安裝文件到本地文件夾中,繼而可以進(jìn)行后序的安裝操作,下載安裝的過(guò)程可以由用戶進(jìn)行默認(rèn)設(shè)置,例如默認(rèn)設(shè)計(jì)下載后自動(dòng)安裝在SD卡上。
響應(yīng)于用戶在應(yīng)用商店中選擇的應(yīng)用程序的下載操作指令,識(shí)別用戶所點(diǎn)擊的應(yīng)用程序,并自動(dòng)生成一個(gè)與當(dāng)前桌面主題對(duì)應(yīng)的主題圖標(biāo),生成該主題圖標(biāo)后顯示其在桌面上;在通過(guò)互聯(lián)網(wǎng)下載被選擇的應(yīng)用程序的過(guò)程,此時(shí)應(yīng)用商店不斷的傳輸該應(yīng)用程序的相關(guān)文件到本地文件夾中,此時(shí)系統(tǒng)不斷讀取本地文件夾的數(shù)據(jù)量的方式獲得當(dāng)前的下載進(jìn)度;根據(jù)下載進(jìn)度的變化,通過(guò)Andriod的開(kāi)源代碼,調(diào)用其相應(yīng)的類和函數(shù)來(lái)控制生成灰色遮罩、裁剪灰色遮罩、繪制灰色遮罩到主題圖標(biāo)等操作。
半透明,在本發(fā)明中,半透明并不是指透明度為50%的透明度,可以包括任意透明度,為了得到更好的透明效果,程序員可以根據(jù)多次測(cè)試結(jié)果調(diào)整,從而通過(guò)預(yù)先設(shè)定的程序設(shè)置透明度。
第一方面,本發(fā)明提供了一種下載過(guò)程中主題圖標(biāo)的建立方法,如圖1所示,包括如下步驟:
S101,響應(yīng)于用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令,獲取該應(yīng)用程序的圖標(biāo)。
本領(lǐng)域內(nèi)技術(shù)人員可以理解,用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令可以是單擊,當(dāng)用戶根據(jù)相應(yīng)的提醒進(jìn)入到下載界面時(shí)被認(rèn)為是用戶成功的實(shí)施了對(duì)應(yīng)用程序的下載指令,系統(tǒng)響應(yīng)于用戶對(duì)應(yīng)用商店中的應(yīng)用程序的下載指令,自動(dòng)獲取該應(yīng)用程序的圖標(biāo),以便盡快生成主題圖標(biāo)。例如需要下載的應(yīng)用程序?yàn)?60手機(jī)助手,則立即讀取360手機(jī)助手的圖標(biāo)樣式。
S102,根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo)。
在獲取應(yīng)用程序的圖標(biāo)后,根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo)。例如當(dāng)前主題樣式是水果主題,當(dāng)需要下載的應(yīng)用程序?yàn)?60手機(jī)助手并已經(jīng)獲取360手機(jī)助手的圖標(biāo)樣式后,在水果主題中自動(dòng)搜搜對(duì)應(yīng)360手機(jī)助手的水果圖標(biāo)樣式,即主題圖標(biāo)。
S103,在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度。
生成主題圖標(biāo)后,例如已經(jīng)生成了對(duì)應(yīng)360手機(jī)助手的主題圖標(biāo),需要將主題圖標(biāo)顯示在桌面上,同時(shí)繪制灰色遮罩到其頂層,當(dāng)進(jìn)度發(fā)生變化時(shí),灰色遮罩會(huì)被裁剪的越來(lái)越少,從而刷新的操作可以使主題圖標(biāo)呈現(xiàn)出動(dòng)態(tài)出現(xiàn)的效果。
首先,當(dāng)用戶點(diǎn)擊應(yīng)用商店的某個(gè)應(yīng)用程序時(shí),移動(dòng)終端響應(yīng)于用戶的點(diǎn)擊指令,識(shí)別用戶所點(diǎn)擊的應(yīng)用程序,然后從相應(yīng)文件夾中獲取該應(yīng)用程序的圖標(biāo);然后,根據(jù)當(dāng)前用戶所使用的桌面主題生成一個(gè)與預(yù)下載應(yīng)用程序相對(duì)應(yīng)的主題圖標(biāo);最后,在桌面顯示主題圖標(biāo)和下載進(jìn)度。本方案采用識(shí)別桌面主題的方式直接生成對(duì)應(yīng)桌面主題的主題圖標(biāo)而不需要做后序的美化工作,可以提高移動(dòng)終端的工作效率,能夠生成與用戶所使用的桌面主題一致的圖標(biāo),具有美化界面、直觀的效果,提高用戶體驗(yàn)。
結(jié)合第一方面,在第一方面的第一個(gè)實(shí)施例中,在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度的步驟如圖2所示,包括如下具體步驟:
S201,在桌面顯示所述主題圖標(biāo)。
本領(lǐng)域內(nèi)技術(shù)人員可以理解,在獲取了對(duì)應(yīng)桌面主題的主題圖標(biāo)后,可以獲得對(duì)應(yīng)的主題圖標(biāo)的大小、形狀、色彩、圖案等參數(shù),故可以通過(guò)Paint類可以在桌面上繪制出相應(yīng)的主題圖標(biāo)。
S202,調(diào)用預(yù)設(shè)形狀函數(shù)獲取所述主題圖標(biāo)的大小、形狀參數(shù)。
在創(chuàng)建灰色遮罩時(shí),大小、形狀參數(shù)是必須獲取的,例如在程序的其他部分可以獲得進(jìn)度變量progress和圖標(biāo)寬度變量height的具體值,通過(guò)定義一個(gè)變量top,根據(jù)其定義語(yǔ)句為float top=(height/100.0f)*progress可以獲得圖標(biāo)的高度,即top的值,從而根據(jù)top的值來(lái)繪制灰色遮罩。
S203,調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩。
在本發(fā)明的一個(gè)實(shí)施例中,首先利用Paint類繪制生成一個(gè)canvas畫(huà)布,然后在預(yù)先檢測(cè)到的高度范圍內(nèi)利用Paint的setColor類將canvas畫(huà)布繪制成灰色,優(yōu)選的,可以通過(guò)設(shè)置setColor類的子類函數(shù)將灰色遮罩設(shè)置為半透明。
S204,獲取當(dāng)前主題圖標(biāo)的下載進(jìn)度,根據(jù)所述預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩。
在本實(shí)施例中,調(diào)用開(kāi)源的Andriod源代碼,應(yīng)用Paint類,例如預(yù)設(shè)采用setXfermode(new(PorterDuff.Mode.DST_IN))函數(shù)可以對(duì)遮罩進(jìn)行裁剪,例如用AvoidXfermode子類可以設(shè)置顏色和容差,強(qiáng)制Paint在其范圍內(nèi)進(jìn)行繪圖;又如PixelXorXfermode子類可以在覆蓋已有的顏色時(shí),應(yīng)用像素XOR操作;又如PorterDuffXfermode子類是一種轉(zhuǎn)換模式,使用其可以使用圖像合成的16條Porter-Duff規(guī)則的任意一條來(lái)控制Paint如何與已有的canvas畫(huà)布圖像進(jìn)行交互,例如與canvas灰色遮罩畫(huà)布進(jìn)行交互。在本發(fā)明中,通過(guò)PorterDuffXfermode子類可以剪切灰色遮罩,依據(jù)讀取文件夾的方式獲取進(jìn)度,然后通過(guò)Paint類與已有的canvas灰色遮罩進(jìn)行交互,以裁剪出符合當(dāng)前下載進(jìn)度的灰色進(jìn)度遮罩。
S205,覆蓋所述灰色進(jìn)度遮罩到所述主題圖標(biāo)上。
裁剪好的灰色進(jìn)度遮罩會(huì)預(yù)先設(shè)定的刷新頻率不斷的繪制到所述主題土圖標(biāo)上,例如一秒中10次刷新,在本發(fā)明中,還可以優(yōu)選的,在滿足預(yù)設(shè)條件時(shí)停止刷新。
在桌面顯示主題圖標(biāo)及其下載進(jìn)度的總的步驟包括如下:首先在桌面顯示生成的主題圖標(biāo);繼而調(diào)用預(yù)設(shè)形狀函數(shù)獲取主題圖標(biāo)的大小、形狀參數(shù)為生成與主題圖標(biāo)大小、形狀一致的灰色遮罩做準(zhǔn)備;繼而調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;繼而通過(guò)讀取文件夾的方式獲得當(dāng)前的下載進(jìn)度,并采用預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;最后覆蓋該灰色進(jìn)度遮罩到所述主題圖標(biāo)上,從而通過(guò)刷新方式達(dá)到動(dòng)態(tài)顯示下載進(jìn)度的效果。采用這種方法顯示下載進(jìn)度具有直觀的效果,提升用戶體驗(yàn)。
結(jié)合第一方面,在第一方面的第二個(gè)實(shí)施例中,調(diào)用刷新函數(shù)刷新覆蓋在該主題圖標(biāo)上的灰色進(jìn)度遮罩,以根據(jù)所述灰色進(jìn)度遮罩跟蹤該應(yīng)用程序的下載進(jìn)度。
在裁剪完灰色遮罩生成灰色進(jìn)度遮罩后,需要將灰色進(jìn)度遮罩覆蓋到主題圖標(biāo)上,可以采用定義OnAppIconRefersh方法刷新灰色進(jìn)度遮罩,隨著刷新動(dòng)作的進(jìn)行,覆蓋在主題圖標(biāo)上的隨著進(jìn)度增加而逐漸變小的灰色進(jìn)度遮罩,從而顯示出動(dòng)態(tài)效果,提升用戶體驗(yàn)。
結(jié)合第一方面的第二個(gè)實(shí)施例,當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。
刷新操作是占用線程、耗電、且消耗系統(tǒng)內(nèi)存的操作,在本發(fā)明中,為了減少刷新所帶來(lái)的占用系統(tǒng)內(nèi)存,提供了一種在滿足預(yù)設(shè)條件時(shí)停止刷新的機(jī)制,當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。從而節(jié)約刷新操作占據(jù)過(guò)多的系統(tǒng)內(nèi)存,提升用戶體驗(yàn)。
結(jié)合第一方面的第二個(gè)實(shí)施例,所述預(yù)設(shè)條件包括以下任意一項(xiàng):
當(dāng)前桌面置于后臺(tái);
當(dāng)前桌面正處于滑動(dòng)頁(yè)面;
當(dāng)前桌面正處于編輯模式;
當(dāng)前桌面正在執(zhí)行動(dòng)畫(huà);
當(dāng)前正在執(zhí)行拖拽動(dòng)作;
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài)。
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。
在本實(shí)施例中,設(shè)置預(yù)設(shè)條件對(duì)所述應(yīng)用程序圖標(biāo)進(jìn)行刷新,從而減少不必要的刷新操作,節(jié)約系統(tǒng)內(nèi)存,保證系統(tǒng)運(yùn)行流暢,從而提升用戶體驗(yàn)。如下所述:
當(dāng)前桌面置于后臺(tái)時(shí),通過(guò)調(diào)用mLauncher.isPaused()可以獲取當(dāng)前桌面是否處于后臺(tái),當(dāng)桌面處于后臺(tái)時(shí),用戶沒(méi)有必要正在桌面上顯示的下載進(jìn)度,此時(shí)可以免去刷新操作。
當(dāng)前桌面正處于滑動(dòng)頁(yè)面時(shí),通過(guò)調(diào)用mLauncher.getWorkspace().isPageMoving()可以獲得當(dāng)前桌面是否處于滑動(dòng)頁(yè)面,用戶可能關(guān)注的重點(diǎn)并不是下載進(jìn)度,此時(shí)可以省略刷新操作。
當(dāng)前桌面正處于編輯模式時(shí),通過(guò)調(diào)用Workspace.mIsEditMode可以獲取當(dāng)前的桌面是否處于編輯模式,當(dāng)處于編輯模式時(shí)停止刷新操作,例如用戶在添加小工具、選壁紙以及進(jìn)入桌面設(shè)置時(shí),為避免桌面上有過(guò)多操作而停止刷新操作。
當(dāng)前桌面正處于執(zhí)行動(dòng)畫(huà)時(shí),通過(guò)調(diào)用mLauncher.mIsAnimating可以獲取當(dāng)前桌面是否在執(zhí)行動(dòng)畫(huà),當(dāng)執(zhí)行動(dòng)畫(huà)時(shí),刷新圖標(biāo)的操作是一個(gè)低優(yōu)先級(jí)操作,為執(zhí)行高優(yōu)先級(jí)的桌面動(dòng)畫(huà)而停止刷新灰色進(jìn)度遮罩。
當(dāng)前正在執(zhí)行拖拽動(dòng)作時(shí),通過(guò)調(diào)用mLauncher.getDragController().isDragging()獲得當(dāng)前桌面上是否有應(yīng)用程序的圖標(biāo)正處于拖拽動(dòng)作,當(dāng)有拖拽動(dòng)作時(shí)圖標(biāo)處于滑動(dòng)狀態(tài),此時(shí)為避免桌面上有過(guò)多操作而停止刷新灰色進(jìn)度遮罩;
當(dāng)在應(yīng)用商店中選定一個(gè)應(yīng)用程序下載時(shí),通過(guò)ContentProvider中的all()方法回調(diào)桌面的FLAG_DOWNLOAD_CREATE方法并將應(yīng)用的包名、圖標(biāo)以及應(yīng)用名通過(guò)bundle傳遞給桌面,此時(shí)會(huì)在桌面上創(chuàng)建一個(gè)該應(yīng)用的快捷方式(Shortcut)的View,同時(shí)將該應(yīng)用的包名、圖標(biāo)以及應(yīng)用名存儲(chǔ)在桌面的數(shù)據(jù)庫(kù)中,本發(fā)明的刷新機(jī)制是在以下條件時(shí)停止刷新:
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi),即當(dāng)前該快捷方式的View在文件夾內(nèi)且文件夾關(guān)閉或者當(dāng)前該View不在正在打開(kāi)的文件內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài),即當(dāng)前該快捷方式的View在桌面或者Hotseat,且文件夾處于打開(kāi)狀態(tài);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。即當(dāng)前該快捷方式的View在桌面或者Hotseat,且該View所在的Screen不在當(dāng)前桌面所處的Screen。
在當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi)、當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài)。
結(jié)合第一方面的第二個(gè)實(shí)施例,當(dāng)檢測(cè)不滿足預(yù)設(shè)條件時(shí)調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩。
當(dāng)不滿足預(yù)設(shè)條件,或者退出預(yù)設(shè)條件時(shí),調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩,從而繼續(xù)顯示下載進(jìn)度,從而提升用戶體驗(yàn)。在本發(fā)明的實(shí)施例中,可以通過(guò)調(diào)用以下函數(shù)確定是否已經(jīng)退出上述預(yù)設(shè)條件:如檢測(cè)當(dāng)前桌面是否回到前臺(tái),使用onResume()函數(shù)確定;檢測(cè)桌面滑動(dòng)是否結(jié)束使用onPageEndMoving()函數(shù);檢測(cè)拖拽操作是否結(jié)束使用endDrag();檢測(cè)是否退出編輯模式使用(endEditMode());檢測(cè)文件夾的打開(kāi)狀態(tài)使用openFolder()函數(shù);而檢測(cè)文件夾是否關(guān)閉的狀態(tài)采用closeFolder()。
結(jié)合第一方面,在第一方面的第三個(gè)實(shí)施例,計(jì)算所述灰色遮罩的面積,當(dāng)所述應(yīng)用程序下載進(jìn)度變化時(shí),按照下載進(jìn)度占總進(jìn)度的比例相應(yīng)地對(duì)所述灰色遮罩裁剪掉同等比例的面積以生成灰色進(jìn)度遮罩。
本領(lǐng)域內(nèi)技術(shù)人員可以理解,下載進(jìn)度主要依據(jù)讀取文件夾的方式,讀取預(yù)下載的應(yīng)用程序已經(jīng)下載到本地的文件夾的數(shù)據(jù)量,然后將該數(shù)據(jù)量與該應(yīng)用程序的總的數(shù)據(jù)量進(jìn)行比較而得到一個(gè)比例值,本領(lǐng)域內(nèi)技術(shù)人員可以理解,該比例值隨著下載進(jìn)度的增加而不斷變大,而灰色遮罩需要裁剪的面積占灰色遮罩總面積的比例值與該比例值一致,裁減掉一部分的灰色遮罩成為灰色進(jìn)度遮罩。裁剪掉的灰色遮罩的面積占總的灰色遮罩的面積的比例與當(dāng)前下載量占總下載量的比例一致,根據(jù)這種比例關(guān)系所計(jì)算出來(lái)的需要裁剪的比例和需要裁剪的面積準(zhǔn)確、可靠。
結(jié)合第一方面,在第一方面的第四個(gè)實(shí)施例,所述裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩的方式包括扇形裁剪和條形裁剪。
在本實(shí)施例中,所述扇形裁剪是以圓心為準(zhǔn),按照下載進(jìn)度對(duì)所述主題圖標(biāo)進(jìn)行扇形的裁剪,圖標(biāo)呈現(xiàn)出旋轉(zhuǎn)式逐漸呈現(xiàn)的效果;所述條形裁剪為按照下載進(jìn)度對(duì)主題圖標(biāo)進(jìn)行條形裁剪,圖標(biāo)呈現(xiàn)自下而上逐漸顯現(xiàn)的效果。
結(jié)合第一方面,在第一方面的第五個(gè)實(shí)施例,所述灰色遮罩為半透明遮罩。
在本發(fā)明的一個(gè)實(shí)施例中,實(shí)用Paint的setXfermode類的子類可以實(shí)現(xiàn)制作半透明的遮罩,例如使用setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN))函數(shù),采用半透明的灰色遮罩具有直觀的效果,在顯示進(jìn)度的同時(shí)還能夠顯示圖標(biāo)的形狀和大小,因此可以提高用戶體驗(yàn)。
結(jié)合第一方面,在第一方面的第六個(gè)實(shí)施例,所述灰色遮罩層位于頂層,所述主題圖標(biāo)層位于所述灰色遮罩層的下一層。
在繪制時(shí),首先將主題圖標(biāo)繪制在底層,然后再將灰度進(jìn)度遮罩繪制在主題圖標(biāo)上,本發(fā)明以主題桌面為背景,依次疊加主題圖標(biāo)層和灰色遮罩層,灰色遮罩層位于主題圖標(biāo)層的頂部,主題圖標(biāo)層位于灰色遮罩層和桌面背景的中間層。
結(jié)合第一方面,在第一方面的第七個(gè)實(shí)施例,如圖3所示:
S301,接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令;
S302,根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或應(yīng)用商店,改變應(yīng)用程序的下載進(jìn)度。
在本發(fā)明的一個(gè)實(shí)施例中,桌面和商店之間的調(diào)用是通過(guò)ContentProvider中的call()方法來(lái)實(shí)現(xiàn)的。
方法原型如:Bundle call(Uri uri,String method,String arg,Bundle extras);
為此在本方案的一個(gè)實(shí)施例中,定義了一系列協(xié)議:
Url:
public static final String ASSISIT_PROVIDE_URL="content://com.qihoo.appstore.LauncherDownloadProvider";//手機(jī)助手provider URL
public static final String LAUNCHER_PROVIDE_URL="content://com.qiku.android.Launcher3.DownLoadProvider";//Launcher provider URL
定義方法為:
public static final String FLAG_DOWNLOAD_CREATE=
"FLAG_DOWNLOAD_CREATE";//創(chuàng)建下載標(biāo)志
public static final String FLAG_DOWNLOAD_ING=
"FLAG_DOWNLOAD_ING";//開(kāi)始下載標(biāo)志
public static final String FLAG_DOWNLOAD_PAUSE=
"FLAG_DOWNLOAD_PAUSE";//暫停下載標(biāo)志
public static final String FLAG_INSTALL_ING=
"FLAG_INSTALL_ING";//安裝標(biāo)志
public static final String FLAG_DOWNLOAD_FAIL=
"FLAG_DOWNLOAD_FAIL";//下載失敗標(biāo)志
public static final String FLAG_INSTALL_FAIL=
"FLAG_INSTALL_FAIL";//安裝失敗標(biāo)志
public static final String FLAG_DOWNLOAD_DELETE=
"FLAG_DOWNLOAD_DELETE";//刪除任務(wù)標(biāo)志
public static final String FLAG_DOWNLOAD_RESUME=
"FLAG_DOWNLOAD_RESUME";//繼續(xù)下載標(biāo)志
public static final String FLAG_INSTALL_RESUME=
"FLAG_INSTALL_RESUME";//繼續(xù)安裝標(biāo)志
public static final String FLAG_GET_SATTE=
"FLAG_INSTALL_RESUME";//獲取下載安裝狀態(tài)
當(dāng)在商店中點(diǎn)擊下載某一個(gè)應(yīng)用時(shí)商店通過(guò)ContentProvider中的call()方法回調(diào)桌面的FLAG_DOWNLOAD_CREATE方法并將應(yīng)用的包名、圖標(biāo)以及應(yīng)用名通過(guò)Bundle傳遞給桌面,此時(shí)會(huì)在桌面上創(chuàng)建一個(gè)該應(yīng)用的快捷方式(Shortcut)的View類,即視圖,同時(shí)我們將該應(yīng)用的包名、圖標(biāo)以及應(yīng)用名存儲(chǔ)在桌面的數(shù)據(jù)庫(kù)中。為了標(biāo)識(shí)該應(yīng)用當(dāng)前處于等待下載的狀態(tài),在該應(yīng)用的圖標(biāo)加上完整的灰色遮罩。當(dāng)商店開(kāi)始下載該應(yīng)用時(shí)商店會(huì)調(diào)用桌面的FLAG_DOWNLOAD_ING方法并將當(dāng)前下載的進(jìn)度通過(guò)Bundle類傳遞給桌面,此時(shí)桌面會(huì)根據(jù)當(dāng)前下載的進(jìn)度計(jì)算出灰色遮罩覆蓋的范圍,然后重新繪制在應(yīng)用的圖標(biāo)上,隨著下載進(jìn)度的持續(xù)增加灰色遮罩逐漸退去,應(yīng)用程序的主題圖標(biāo)逐漸顯現(xiàn)出來(lái)。
根據(jù)應(yīng)用商店或者桌面的任何一個(gè)對(duì)主題圖標(biāo)的改變進(jìn)度指令,例如暫停、取消等指令,根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或者應(yīng)用商店,從而完成暫停下載傳輸或停止傳輸并刪除,從而改變應(yīng)用程序的下載進(jìn)度。
結(jié)合第一方面,在第一方面的第八個(gè)實(shí)施例,在調(diào)用刷新函數(shù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),在所述主題圖標(biāo)下方顯示進(jìn)度條。
在調(diào)用刷新函數(shù)刷新在主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),可同時(shí)顯示下載進(jìn)度條,從而達(dá)到雙重顯示的效果,使得顯示效果更為直觀。
第二方面,本發(fā)明實(shí)施例提供了一種下載過(guò)程中主題圖標(biāo)的建立裝置,該下載過(guò)程中主題圖標(biāo)的建立裝置具有實(shí)現(xiàn)上述第一方面中下載過(guò)程中主題圖標(biāo)的建立方法的功能。所述功能可以通過(guò)硬件實(shí)現(xiàn),也可以通過(guò)硬件執(zhí)行相應(yīng)的軟件實(shí)現(xiàn)。所述硬件或軟件包括一個(gè)或多個(gè)與上述功能相對(duì)應(yīng)的模塊,如圖4所示,包括如下單元:
獲取單元101,用于響應(yīng)于用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令,獲取該應(yīng)用程序的圖標(biāo);
獲取單元101用于獲取應(yīng)用程序的圖標(biāo),本領(lǐng)域內(nèi)技術(shù)人員可以理解,用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令可以是單擊,當(dāng)用戶根據(jù)相應(yīng)的提醒進(jìn)入到下載界面時(shí)被認(rèn)為是用戶成功的實(shí)施了對(duì)應(yīng)用程序的下載指令,系統(tǒng)響應(yīng)于用戶對(duì)應(yīng)用商店中的應(yīng)用程序的下載指令,自動(dòng)獲取該應(yīng)用程序的圖標(biāo),以便盡快生成主題圖標(biāo)。例如需要下載的應(yīng)用程序?yàn)?60手機(jī)助手,則立即讀取360手機(jī)助手的圖標(biāo)樣式。
生成單元102,用于根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo);
在獲取應(yīng)用程序的圖標(biāo)后,生成單元102根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo)。例如當(dāng)前主題樣式是水果主題,當(dāng)需要下載的應(yīng)用程序?yàn)?60手機(jī)助手并已經(jīng)獲取360手機(jī)助手的圖標(biāo)樣式后,在水果主題中自動(dòng)搜搜對(duì)應(yīng)360手機(jī)助手的水果圖標(biāo)樣式,即主題圖標(biāo)。
顯示單元103,用于在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度。
顯示單元103在生成主題圖標(biāo)后,例如已經(jīng)生成了對(duì)應(yīng)360手機(jī)助手的主題圖標(biāo),將主題圖標(biāo)顯示在桌面上,同時(shí)系統(tǒng)會(huì)繪制灰色遮罩到其頂層,當(dāng)進(jìn)度發(fā)生變化時(shí),灰色遮罩會(huì)被裁剪的越來(lái)越少,從而刷新的操作可以使主題圖標(biāo)呈現(xiàn)出動(dòng)態(tài)出現(xiàn)的效果。
首先,獲取單元用于當(dāng)用戶點(diǎn)擊應(yīng)用商店的某個(gè)應(yīng)用程序時(shí),移動(dòng)終端響應(yīng)于用戶的點(diǎn)擊指令,識(shí)別用戶所點(diǎn)擊的應(yīng)用程序,然后從相應(yīng)文件夾中獲取該應(yīng)用程序的圖標(biāo);然后,生成單元根據(jù)當(dāng)前用戶所使用的桌面主題生成一個(gè)與預(yù)下載應(yīng)用程序相對(duì)應(yīng)的主題圖標(biāo);最后,顯示單元在桌面顯示主題圖標(biāo)和下載進(jìn)度。本方案采用識(shí)別桌面主題的方式直接生成對(duì)應(yīng)桌面主題的主題圖標(biāo)而不需要做后序的美化工作,可以提高移動(dòng)終端的工作效率,能夠生成與用戶所使用的桌面主題一致的圖標(biāo),具有美化界面、直觀的效果,提高用戶體驗(yàn)。
結(jié)合第二方面,在第二方面的第一個(gè)實(shí)施例中,如圖5所示,所述顯示單元具體包括如下模塊:
桌面顯示模塊201,用于在桌面顯示所述主題圖標(biāo);
桌面顯示模塊201是用于在桌面顯示所述主題圖標(biāo),本領(lǐng)域內(nèi)技術(shù)人員可以理解,在獲取了對(duì)應(yīng)桌面主題的主題圖標(biāo)后,可以獲得對(duì)應(yīng)的主題圖標(biāo)的大小、形狀、色彩、圖案等參數(shù),故可以通過(guò)Paint類可以在桌面上繪制出相應(yīng)的主題圖標(biāo)。
參數(shù)獲取模塊202,用于調(diào)用預(yù)設(shè)形狀函數(shù)獲取所述主題圖標(biāo)的大小、形狀參數(shù);
參數(shù)獲取單元202用于在創(chuàng)建灰色遮罩時(shí)獲取所述主題圖標(biāo)的大小、形狀參數(shù);例如在程序的其他部分可以獲得進(jìn)度變量progress和圖標(biāo)寬度變量height的具體值,通過(guò)定義一個(gè)變量top,根據(jù)其定義語(yǔ)句為float top=(height/100.0f)*progress可以獲得圖標(biāo)的高度,即top的值,從而根據(jù)top的值來(lái)繪制灰色遮罩。
繪制模塊203,用于調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;
繪制模塊203是用于調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩,在本發(fā)明的一個(gè)實(shí)施例中,首先利用Paint類繪制生成一個(gè)canvas畫(huà)布,然后在預(yù)先檢測(cè)到的高度范圍內(nèi)利用Paint的setColor類將canvas畫(huà)布繪制成灰色,優(yōu)選的,可以通過(guò)設(shè)置setColor類的子類函數(shù)將灰色遮罩設(shè)置為半透明。
裁剪模塊204,用于獲取當(dāng)前主題圖標(biāo)的下載進(jìn)度,根據(jù)所述預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;
裁剪模塊204用于根據(jù)所述預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩,調(diào)用開(kāi)源的Andriod源代碼,應(yīng)用Paint類,例如預(yù)設(shè)采用setXfermode(new(PorterDuff.Mode.DST_IN))函數(shù)可以對(duì)遮罩進(jìn)行裁剪,例如用AvoidXfermode子類可以設(shè)置顏色和容差,強(qiáng)制Paint在其范圍內(nèi)進(jìn)行繪圖;又如PixelXorXfermode子類可以在覆蓋已有的顏色時(shí),應(yīng)用像素XOR操作;又如PorterDuffXfermode子類是一種轉(zhuǎn)換模式,使用其可以使用圖像合成的16條Porter-Duff規(guī)則的任意一條來(lái)控制Paint如何與已有的canvas畫(huà)布圖像進(jìn)行交互,例如與canvas灰色遮罩畫(huà)布進(jìn)行交互。在本發(fā)明中,通過(guò)PorterDuffXfermode子類可以剪切灰色遮罩,依據(jù)讀取文件夾的方式獲取進(jìn)度,然后通過(guò)Paint類與已有的canvas灰色遮罩進(jìn)行交互,以裁剪出符合當(dāng)前下載進(jìn)度的灰色進(jìn)度遮罩。
覆蓋模塊205,用于覆蓋所述灰色進(jìn)度遮罩到所述主題圖標(biāo)上。
覆蓋模塊205用于覆蓋所述灰色進(jìn)度遮罩到所述主題圖標(biāo)上,覆蓋也是繪制,裁剪好的灰色進(jìn)度遮罩會(huì)以預(yù)先設(shè)定的刷新頻率不斷的繪制到所述主題土圖標(biāo)上,例如一秒中10次刷新。
在桌面顯示主題圖標(biāo)后,還需要直觀的顯示下載進(jìn)度。顯示單元具體包括:桌面顯示模塊,用于在桌面顯示生成的主題圖標(biāo);參數(shù)獲取單元,用于調(diào)用預(yù)設(shè)形狀函數(shù)獲取主題圖標(biāo)的大小、形狀參數(shù)為生成與主題圖標(biāo)大小、形狀一致的灰色遮罩做準(zhǔn)備;繪制模塊,用于調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;裁剪模塊,用于通過(guò)讀取文件夾的方式獲得當(dāng)前的下載進(jìn)度,并采用預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;覆蓋模塊,用于覆蓋該灰色進(jìn)度遮罩到所述主題圖標(biāo)上,從而通過(guò)刷新方式達(dá)到動(dòng)態(tài)顯示下載進(jìn)度的效果。采用這種方法顯示下載進(jìn)度具有直觀的效果,提升用戶體驗(yàn)。
結(jié)合第二方面,在第二方面的第二個(gè)實(shí)施例中,調(diào)用刷新函數(shù)刷新覆蓋在該主題圖標(biāo)上的灰色進(jìn)度遮罩,以根據(jù)所述灰色進(jìn)度遮罩跟蹤該應(yīng)用程序的下載進(jìn)度。
在裁剪完灰色遮罩生成灰色進(jìn)度遮罩后,需要將灰色進(jìn)度遮罩覆蓋到主題圖標(biāo)上,可以采用定義OnAppIconRefersh方法刷新灰色進(jìn)度遮罩,隨著刷新動(dòng)作的進(jìn)行,覆蓋在主題圖標(biāo)上的隨著進(jìn)度增加而逐漸變小的灰色進(jìn)度遮罩,從而顯示出動(dòng)態(tài)效果,提升用戶體驗(yàn)。
結(jié)合第二方面的第二個(gè)實(shí)施例,當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。
刷新操作是占用線程、耗電、且消耗系統(tǒng)內(nèi)存的操作,在本發(fā)明中,為了減少刷新所帶來(lái)的占用系統(tǒng)內(nèi)存,提供了一種在滿足預(yù)設(shè)條件時(shí)停止刷新的機(jī)制,當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。從而節(jié)約刷新操作占據(jù)過(guò)多的系統(tǒng)內(nèi)存,提升用戶體驗(yàn)。
結(jié)合第二方面的第二個(gè)實(shí)施例,所述預(yù)設(shè)條件包括以下任意一項(xiàng):
當(dāng)前桌面置于后臺(tái);
當(dāng)前桌面正處于滑動(dòng)頁(yè)面;
當(dāng)前桌面正處于編輯模式;
當(dāng)前桌面正在執(zhí)行動(dòng)畫(huà);
當(dāng)前正在執(zhí)行拖拽動(dòng)作;
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。
在本實(shí)施例中,設(shè)置預(yù)設(shè)條件對(duì)所述應(yīng)用程序圖標(biāo)進(jìn)行刷新,從而減少不必要的刷新操作,節(jié)約系統(tǒng)內(nèi)存,保證系統(tǒng)運(yùn)行流暢,從而提升用戶體驗(yàn)。如下所述:
當(dāng)前桌面置于后臺(tái)時(shí),通過(guò)調(diào)用mLauncher.isPaused()可以獲取當(dāng)前桌面是否處于后臺(tái),當(dāng)桌面處于后臺(tái)時(shí),用戶沒(méi)有必要正在桌面上顯示的下載進(jìn)度,此時(shí)可以免去刷新操作;
當(dāng)前桌面正處于滑動(dòng)頁(yè)面時(shí),通過(guò)調(diào)用mLauncher.getWorkspace().isPageMoving()可以獲得當(dāng)前桌面是否處于滑動(dòng)頁(yè)面,用戶可能關(guān)注的重點(diǎn)并不是下載進(jìn)度,此時(shí)可以省略刷新操作;
當(dāng)前桌面正處于編輯模式時(shí),通過(guò)調(diào)用Workspace.mIsEditMode可以獲取當(dāng)前的桌面是否處于編輯模式,當(dāng)處于編輯模式時(shí)停止刷新操作,例如用戶在添加小工具、選壁紙以及進(jìn)入桌面設(shè)置時(shí),為避免桌面上有過(guò)多操作而停止刷新操作;
當(dāng)前桌面正處于執(zhí)行動(dòng)畫(huà)時(shí),通過(guò)調(diào)用mLauncher.mIsAnimating可以獲取當(dāng)前桌面是否在執(zhí)行動(dòng)畫(huà),當(dāng)執(zhí)行動(dòng)畫(huà)時(shí),刷新圖標(biāo)的操作是一個(gè)低優(yōu)先級(jí)操作,為執(zhí)行高優(yōu)先級(jí)的桌面動(dòng)畫(huà)而停止刷新灰色進(jìn)度遮罩。當(dāng)前正在執(zhí)行拖拽動(dòng)作時(shí),通過(guò)調(diào)用mLauncher.getDragController().isDragging()可以獲取當(dāng)前桌面上是否有應(yīng)用程序的圖標(biāo)正處于拖拽動(dòng)作,當(dāng)有拖拽動(dòng)作時(shí)圖標(biāo)處于滑動(dòng)狀態(tài),此時(shí)為避免桌面上有過(guò)多操作而停止刷新灰色進(jìn)度遮罩;
當(dāng)在應(yīng)用商店中選定一個(gè)應(yīng)用程序下載時(shí),通過(guò)ContentProvider中的all()方法回調(diào)桌面的FLAG_DOWNLOAD_CREATE方法并將應(yīng)用的包名、圖標(biāo)以及應(yīng)用名通過(guò)bundle傳遞給桌面,此時(shí)會(huì)在桌面上創(chuàng)建一個(gè)該應(yīng)用的快捷方式(Shortcut)的View,同時(shí)將該應(yīng)用的包名、圖標(biāo)以及應(yīng)用名存儲(chǔ)在桌面的數(shù)據(jù)庫(kù)中,本發(fā)明的刷新機(jī)制是在以下條件時(shí)停止刷新:
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi),即當(dāng)前該快捷方式的View在文件夾內(nèi)且文件夾關(guān)閉或者當(dāng)前該View不在正在打開(kāi)的文件內(nèi)。
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài),即當(dāng)前該快捷方式的View在桌面或者Hotseat,且文件夾處于打開(kāi)狀態(tài)。
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。即當(dāng)前該快捷方式的View在桌面或者Hotseat,且該View所在的Screen不在當(dāng)前桌面所處的Screen。
在當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi)、當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài)。
結(jié)合第二方面的第二個(gè)實(shí)施例,當(dāng)檢測(cè)不滿足預(yù)設(shè)條件時(shí)調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩。
當(dāng)不滿足預(yù)設(shè)條件,或者退出預(yù)設(shè)條件時(shí),調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩,從而繼續(xù)顯示下載進(jìn)度,從而提升用戶體驗(yàn)。在本發(fā)明的實(shí)施例中,可以通過(guò)調(diào)用以下函數(shù)確定是否已經(jīng)退出上述預(yù)設(shè)條件:如檢測(cè)當(dāng)前桌面是否回到前臺(tái),使用onResume()函數(shù)確定;檢測(cè)桌面滑動(dòng)是否結(jié)束使用onPageEndMoving()函數(shù);檢測(cè)拖拽操作是否結(jié)束使用endDrag();檢測(cè)是否退出編輯模式使用(endEditMode());檢測(cè)文件夾的打開(kāi)狀態(tài)使用openFolder()函數(shù);而檢測(cè)文件夾是否關(guān)閉的狀態(tài)采用closeFolder()。
結(jié)合第二方面,在第二方面的第三個(gè)實(shí)施例中,計(jì)算所述灰色遮罩的面積,當(dāng)所述應(yīng)用程序下載進(jìn)度變化時(shí),按照下載進(jìn)度占總進(jìn)度的比例相應(yīng)地對(duì)所述遮罩裁剪掉同等比例的面積以生成灰色進(jìn)度遮罩。
本領(lǐng)域內(nèi)技術(shù)人員可以理解,下載進(jìn)度主要依據(jù)讀取文件夾的方式,讀取預(yù)下載的應(yīng)用程序已經(jīng)下載到本地的文件夾的數(shù)據(jù)量,然后將該數(shù)據(jù)量與該應(yīng)用程序的總的數(shù)據(jù)量進(jìn)行比較而得到一個(gè)比例值,本領(lǐng)域內(nèi)技術(shù)人員可以理解,該比例值隨著下載進(jìn)度的增加而不斷變大,而灰色遮罩需要裁剪的面積占灰色遮罩總面積的比例值與該比例值一致,裁減掉一部分的灰色遮罩成為灰色進(jìn)度遮罩。裁剪掉的灰色遮罩的面積占總的灰色遮罩的面積的比例與當(dāng)前下載量占總下載量的比例一致,根據(jù)這種比例關(guān)系所計(jì)算出來(lái)的需要裁剪的比例和需要裁剪的面積準(zhǔn)確、可靠。
結(jié)合第二方面,在第二方面的第四個(gè)實(shí)施例中,所述裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩的方式包括扇形裁剪和條形裁剪。
在本實(shí)施例中,所述扇形裁剪是以圓心為準(zhǔn),按照下載進(jìn)度對(duì)所述主題圖標(biāo)進(jìn)行扇形的裁剪,圖標(biāo)呈現(xiàn)出旋轉(zhuǎn)式逐漸呈現(xiàn)的效果;所述條形裁剪為按照下載進(jìn)度對(duì)主題圖標(biāo)進(jìn)行條形裁剪,圖標(biāo)呈現(xiàn)自下而上逐漸顯現(xiàn)的效果。
結(jié)合第二方面,在第二方面的第五個(gè)實(shí)施例中,所述遮罩層為半透明遮罩。
在本發(fā)明的一個(gè)實(shí)施例中,實(shí)用Paint的setXfermode類的子類可以實(shí)現(xiàn)制作半透明的遮罩,例如使用setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN))函數(shù),采用半透明的灰色遮罩具有直觀的效果,在顯示進(jìn)度的同時(shí)還能夠顯示圖標(biāo)的形狀和大小,因此可以提高用戶體驗(yàn)。
結(jié)合第二方面,在第二方面的第六個(gè)實(shí)施例中,所述遮罩層位于頂層,所述圖標(biāo)層位于所述遮罩層的下一層。
在繪制時(shí),首先將主題圖標(biāo)繪制在底層,然后再將灰度進(jìn)度遮罩繪制在主題圖標(biāo)上,本發(fā)明以主題桌面為背景,依次疊加主題圖標(biāo)層和灰色遮罩層,灰色遮罩層位于主題圖標(biāo)層的頂部,主題圖標(biāo)層位于灰色遮罩層和桌面背景的中間層。
結(jié)合第二方面,在第二方面的第七個(gè)實(shí)施例中,如圖6所示,還包括如下單元:
接收單元301,用于接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令;
回調(diào)單元302,用于根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或應(yīng)用商店,改變應(yīng)用程序的下載進(jìn)度。
接收單元301用于接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令例如暫停、取消等指令,回調(diào)單元302用于根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或者應(yīng)用商店,從而完成暫停下載傳輸或停止傳輸并刪除,從而改變應(yīng)用程序的下載進(jìn)度。
在本發(fā)明的一個(gè)實(shí)施例中,桌面和商店之間的調(diào)用是通過(guò)ContentProvider中的call()方法來(lái)實(shí)現(xiàn)的。
方法原型如:Bundle call(Uri uri,String method,String arg,Bundle extras);
為此在本方案的一個(gè)實(shí)施例中,定義了一系列協(xié)議:
Url:
public static final String ASSISIT_PROVIDE_URL="content://com.qihoo.appstore.LauncherDownloadProvider";//手機(jī)助手provider URL
public static final String LAUNCHER_PROVIDE_URL="content://com.qiku.android.Launcher3.DownLoadProvider";//Launcher provider URL
定義方法為:
public static final String FLAG_DOWNLOAD_CREATE=
"FLAG_DOWNLOAD_CREATE";//創(chuàng)建下載標(biāo)志
public static final String FLAG_DOWNLOAD_ING=
"FLAG_DOWNLOAD_ING";//開(kāi)始下載標(biāo)志
public static final String FLAG_DOWNLOAD_PAUSE=
"FLAG_DOWNLOAD_PAUSE";//暫停下載標(biāo)志
public static final String FLAG_INSTALL_ING=
"FLAG_INSTALL_ING";//安裝標(biāo)志
public static final String FLAG_DOWNLOAD_FAIL=
"FLAG_DOWNLOAD_FAIL";//下載失敗標(biāo)志
public static final String FLAG_INSTALL_FAIL=
"FLAG_INSTALL_FAIL";//安裝失敗標(biāo)志
public static final String FLAG_DOWNLOAD_DELETE=
"FLAG_DOWNLOAD_DELETE";//刪除任務(wù)標(biāo)志
public static final String FLAG_DOWNLOAD_RESUME=
"FLAG_DOWNLOAD_RESUME";//繼續(xù)下載標(biāo)志
public static final String FLAG_INSTALL_RESUME=
"FLAG_INSTALL_RESUME";//繼續(xù)安裝標(biāo)志
public static final String FLAG_GET_SATTE=
"FLAG_INSTALL_RESUME";//獲取下載安裝狀態(tài)
當(dāng)在商店中點(diǎn)擊下載某一個(gè)應(yīng)用時(shí)商店通過(guò)ContentProvider中的call()方法回調(diào)桌面的FLAG_DOWNLOAD_CREATE方法并將應(yīng)用的包名、圖標(biāo)以及應(yīng)用名通過(guò)Bundle傳遞給桌面,此時(shí)會(huì)在桌面上創(chuàng)建一個(gè)該應(yīng)用的快捷方式(Shortcut)的View類,即視圖,同時(shí)我們將該應(yīng)用的包名、圖標(biāo)以及應(yīng)用名存儲(chǔ)在桌面的數(shù)據(jù)庫(kù)中。為了標(biāo)識(shí)該應(yīng)用當(dāng)前處于等待下載的狀態(tài),在該應(yīng)用的圖標(biāo)加上完整的灰色遮罩。當(dāng)商店開(kāi)始下載該應(yīng)用時(shí)商店會(huì)調(diào)用桌面的FLAG_DOWNLOAD_ING方法并將當(dāng)前下載的進(jìn)度通過(guò)Bundle類傳遞給桌面,此時(shí)桌面會(huì)根據(jù)當(dāng)前下載的進(jìn)度計(jì)算出灰色遮罩覆蓋的范圍,然后重新繪制在應(yīng)用的圖標(biāo)上,隨著下載進(jìn)度的持續(xù)增加灰色遮罩逐漸退去,應(yīng)用程序的主題圖標(biāo)逐漸顯現(xiàn)出來(lái)。
根據(jù)應(yīng)用商店或者桌面的任何一個(gè)對(duì)主題圖標(biāo)的改變進(jìn)度指令,例如暫停、取消等指令,根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或者應(yīng)用商店,從而完成暫停下載傳輸或停止傳輸并刪除,從而改變應(yīng)用程序的下載進(jìn)度。
結(jié)合第二方面,在第二方面的第八個(gè)實(shí)施例中,在調(diào)用刷新函數(shù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),在所述主題圖標(biāo)下方顯示進(jìn)度條。
在調(diào)用刷新函數(shù)刷新在主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),可同時(shí)顯示下載進(jìn)度條,從而達(dá)到雙重顯示的效果,使得顯示效果更為直觀。
本發(fā)明實(shí)施例還提供了一種便攜式移動(dòng)終端,如圖7所示,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,具體技術(shù)細(xì)節(jié)未揭示的,請(qǐng)參照本發(fā)明實(shí)施例方法部分,所述便攜式移動(dòng)終端包括:
觸敏顯示器,用于感知操作指令并根據(jù)該指令顯示相應(yīng)的界面;
存儲(chǔ)器,用于存儲(chǔ)支持收發(fā)裝置執(zhí)行上述下載過(guò)程中主題圖標(biāo)的建立方法的程序;
通信接口,用于上述下載過(guò)程中主題圖標(biāo)的建立裝置與其他設(shè)備或通信網(wǎng)絡(luò)通信;
一個(gè)或多個(gè)處理器,用于執(zhí)行所述存儲(chǔ)器中存儲(chǔ)的程序;
一個(gè)或多個(gè)應(yīng)用程序,其中所述一個(gè)或多個(gè)應(yīng)用程序被存儲(chǔ)在所述存儲(chǔ)器中并被配置為由所述一個(gè)或多個(gè)處理器執(zhí)行,所述一個(gè)或多個(gè)程序被配置為用于執(zhí)行下載過(guò)程中主題突變的建立的任何方法。
該終端可以為包括手機(jī)、平板電腦、PDA(Personal Digital Assistant,個(gè)人數(shù)字助理)、POS(Point of Sales,銷售終端)、車載電腦等任意終端設(shè)備,以終端為手機(jī)為例:
圖7示出的是與本發(fā)明實(shí)施例提供的終端相關(guān)的手機(jī)的部分結(jié)構(gòu)的框圖。參考圖7,手機(jī)包括:觸敏顯示器701、存儲(chǔ)器702、通信接口703、一個(gè)或多個(gè)處理器704、一個(gè)或多個(gè)應(yīng)用程序705、以及電源706等部件。本領(lǐng)域技術(shù)人員可以理解,圖7中示出的手機(jī)結(jié)構(gòu)并不構(gòu)成對(duì)手機(jī)的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。
下面結(jié)合圖7對(duì)手機(jī)的各個(gè)構(gòu)成部件進(jìn)行具體的介紹:
觸敏顯示器701為觸摸屏和顯示屏合二為一的整體,觸摸屏和顯示屏各占一層;觸摸屏包括觸摸板,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板上或在觸控面板附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動(dòng)相應(yīng)的連接裝置。可選的,觸控面板可包括觸摸檢測(cè)裝置和觸摸控制器兩個(gè)部分。其中,觸摸檢測(cè)裝置檢測(cè)用戶的觸摸方位,并檢測(cè)觸摸操作帶來(lái)的信號(hào),將信號(hào)傳送給觸摸控制器;觸摸控制器從觸摸檢測(cè)裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器704,并能接收處理器704發(fā)來(lái)的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸控面板。除了觸控面板,顯示屏可用于顯示由用戶輸入的信息或提供給用戶的信息以及手機(jī)的各種菜單。顯示單元可包括顯示面板,可選的,可以采用液晶顯示器(Liquid Crystal Display,LCD)、有機(jī)發(fā)光二極管(Organic Light-Emitting Diode,OLED)等形式來(lái)配置顯示面板。進(jìn)一步的,觸控面板可覆蓋顯示面板,當(dāng)觸控面板檢測(cè)到在其上或附近的觸摸操作后,傳送給處理器704以確定觸摸事件的類型,隨后處理器704根據(jù)觸摸事件的類型在顯示面板上提供相應(yīng)的視覺(jué)輸出。雖然在圖7中,觸控面板與顯示面板是作為兩個(gè)獨(dú)立的部件來(lái)實(shí)現(xiàn)手機(jī)的輸入和輸入功能,但是在某些實(shí)施例中,可以將觸控面板與顯示面板集成而實(shí)現(xiàn)手機(jī)的輸入和輸出功能。
存儲(chǔ)器702可用于存儲(chǔ)軟件程序以及模塊,處理器704通過(guò)運(yùn)行存儲(chǔ)在存儲(chǔ)器702的軟件程序以及模塊,從而執(zhí)行手機(jī)的各種功能應(yīng)用以及數(shù)據(jù)處理。存儲(chǔ)器702可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序705(比如聲音播放功能、圖像播放功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)手機(jī)的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲(chǔ)器702可以包括高速隨機(jī)存取存儲(chǔ)區(qū)702,還可以包括非易失性存儲(chǔ)區(qū)702,例如至少一個(gè)磁盤(pán)存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。
通信接口703,用于上述下載過(guò)程中主題圖標(biāo)的建立裝置與其他設(shè)備或通信網(wǎng)絡(luò)通信。通信接口703是處理器704與外界子系統(tǒng)進(jìn)行通信的接口,用于處理器704與外界系統(tǒng)之間信息的傳輸,以達(dá)到控制子系統(tǒng)的目的。
處理器704是手機(jī)的控制中心,利用各種通信接口703和線路連接整個(gè)手機(jī)的各個(gè)部分,通過(guò)運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)區(qū)702內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)區(qū)702內(nèi)的數(shù)據(jù),執(zhí)行手機(jī)的各種功能和處理數(shù)據(jù),從而對(duì)手機(jī)進(jìn)行整體監(jiān)控??蛇x的,處理器704可包括一個(gè)或多個(gè)處理單元;優(yōu)選的,處理器704可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序705等,調(diào)制解調(diào)處理器主要處理無(wú)線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器704中。
一個(gè)或多個(gè)應(yīng)用程序705,優(yōu)選地,這些應(yīng)用程序705都被存儲(chǔ)在所述存儲(chǔ)區(qū)702中并被配置為由所述一個(gè)或多個(gè)處理器704執(zhí)行,所述一個(gè)或多個(gè)應(yīng)用程序705被配置為用于執(zhí)行所述下載過(guò)程中主題圖標(biāo)的建立方法的任何實(shí)施例。
手機(jī)還包括給各個(gè)部件供電的電源706(比如電池),優(yōu)選的,電源706可以通過(guò)電源管理系統(tǒng)與處理器704邏輯相連,從而通過(guò)電源706管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。
盡管未示出,手機(jī)還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。
在本發(fā)明實(shí)施例中,該便攜式多功能終端所包括的處理器704還具有以下功能:
響應(yīng)于用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令,獲取該應(yīng)用程序的圖標(biāo);
根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo);
在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度。
本發(fā)明實(shí)施例中還提供了一種計(jì)算機(jī)存儲(chǔ)介質(zhì),用于儲(chǔ)存為上述下載過(guò)程中主題圖標(biāo)的建立裝置所用的計(jì)算機(jī)軟件指令,其包含用于執(zhí)行上述第二方面為下載過(guò)程中主題圖標(biāo)的建立裝置所設(shè)計(jì)的程序。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng),裝置和單元的具體工作過(guò)程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過(guò)程,在此不再贅述。
在本申請(qǐng)所提供的幾個(gè)實(shí)施例中,本領(lǐng)域內(nèi)技術(shù)人員可以理解,所揭露的系統(tǒng),裝置和方法,可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過(guò)一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過(guò)程序指令來(lái)控制相關(guān)的硬件來(lái)完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ)介質(zhì)可以包括:只讀存儲(chǔ)器(ROM,Read Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁盤(pán)或光盤(pán)等。
綜上所述,本發(fā)明提供的技術(shù)方案概述如下:
A1、一種下載過(guò)程中主題圖標(biāo)的建立方法,包括如下步驟:
響應(yīng)于用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令,獲取該應(yīng)用程序的圖標(biāo);
根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo);
在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度。
A2、根據(jù)權(quán)利要求A1所述的建立方法,在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度的步驟包括如下具體步驟:
在桌面顯示所述主題圖標(biāo);
調(diào)用預(yù)設(shè)形狀函數(shù)獲取所述主題圖標(biāo)的大小、形狀參數(shù);
調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;
獲取當(dāng)前主題圖標(biāo)的下載進(jìn)度,根據(jù)所述預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;
覆蓋所述灰色進(jìn)度遮罩到所述主題圖標(biāo)上。
A3、根據(jù)權(quán)利要求A1所述的建立方法,還包括:
調(diào)用刷新函數(shù)刷新覆蓋在該主題圖標(biāo)上的灰色進(jìn)度遮罩,以根據(jù)所述灰色進(jìn)度遮罩跟蹤該應(yīng)用程序的下載進(jìn)度。
A4、根據(jù)權(quán)利要求A3所述的建立方法,還包括:
當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。
A5、根據(jù)權(quán)利要求A4所述的建立方法,所述預(yù)設(shè)條件包括以下任意一項(xiàng):
當(dāng)前桌面置于后臺(tái);
當(dāng)前桌面正處于滑動(dòng)頁(yè)面;
當(dāng)前桌面正處于編輯模式;
當(dāng)前桌面正在執(zhí)行動(dòng)畫(huà);
當(dāng)前正在執(zhí)行拖拽動(dòng)作;
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。
A6、根據(jù)權(quán)利要求A5所述的建立方法,包括:
當(dāng)檢測(cè)不滿足預(yù)設(shè)條件時(shí)調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩。
A7、根據(jù)權(quán)利要求A1所述的建立方法,包括:
計(jì)算所述灰色遮罩的面積,當(dāng)所述應(yīng)用程序下載進(jìn)度變化時(shí),按照下載進(jìn)度占總進(jìn)度的比例相應(yīng)地對(duì)所述灰色遮罩裁剪掉同等比例的面積以生成灰色進(jìn)度遮罩。
A8、根據(jù)權(quán)利要求A1所述的建立方法,包括:
所述裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩的方式包括扇形裁剪和條形裁剪。
A9、根據(jù)權(quán)利要求A1所述的建立方法,包括:
所述灰色遮罩為半透明遮罩。
A10、根據(jù)權(quán)利要求A1所述的建立方法,包括:
所述灰色遮罩層位于頂層,所述主題圖標(biāo)層位于所述灰色遮罩層的下一層。
A11、根據(jù)權(quán)利要求A1所述的建立方法,包括:
接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令;
根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或應(yīng)用商店,改變應(yīng)用程序的下載進(jìn)度。
A12、根據(jù)權(quán)利要求A1所述的建立方法,包括:
在調(diào)用刷新函數(shù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),在所述主題圖標(biāo)下方顯示進(jìn)度條。
B13、一種下載過(guò)程中主題圖標(biāo)的建立裝置,包括如下單元:
獲取單元,用于響應(yīng)于用戶對(duì)應(yīng)用商店中應(yīng)用程序的下載指令,獲取該應(yīng)用程序的圖標(biāo);
生成單元,用于根據(jù)當(dāng)前桌面主題樣式生成與所述應(yīng)用程序的圖標(biāo)相對(duì)應(yīng)的主題圖標(biāo);
顯示單元,用于在桌面顯示所述主題圖標(biāo)及其下載進(jìn)度。
B14、根據(jù)權(quán)利要求B13所述的建立裝置,所述顯示單元具體包括如下模塊:
桌面顯示模塊,用于在桌面顯示所述主題圖標(biāo);
參數(shù)獲取模塊,用于調(diào)用預(yù)設(shè)形狀函數(shù)獲取所述主題圖標(biāo)的大小、形狀參數(shù);
繪制模塊,用于調(diào)用預(yù)設(shè)繪圖函數(shù)繪制對(duì)應(yīng)于所述主題圖標(biāo)大小、形狀參數(shù)的灰色遮罩;
裁剪模塊,用于獲取當(dāng)前主題圖標(biāo)的下載進(jìn)度,根據(jù)所述預(yù)設(shè)裁剪函數(shù)裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩;
覆蓋模塊,用于覆蓋所述灰色進(jìn)度遮罩到所述主題圖標(biāo)上。
B15、根據(jù)權(quán)利要求B13所述的建立裝置,還包括:
調(diào)用刷新函數(shù)刷新覆蓋在該主題圖標(biāo)上的灰色進(jìn)度遮罩,以根據(jù)所述灰色進(jìn)度遮罩跟蹤該應(yīng)用程序的下載進(jìn)度。
B16、根據(jù)權(quán)利要求B15所述的建立裝置,還包括:
當(dāng)滿足預(yù)設(shè)條件時(shí),停止刷新覆蓋在主題圖標(biāo)上的灰色進(jìn)度遮罩。
B17、根據(jù)權(quán)利要求B16所述的建立裝置,所述預(yù)設(shè)條件包括以下任意一項(xiàng):
當(dāng)前桌面置于后臺(tái);
當(dāng)前桌面正處于滑動(dòng)頁(yè)面;
當(dāng)前桌面正處于編輯模式;
當(dāng)前桌面正在執(zhí)行動(dòng)畫(huà);
當(dāng)前正在執(zhí)行拖拽動(dòng)作;
當(dāng)前所述應(yīng)用程序快捷方式的視圖不在正在打開(kāi)的文件夾內(nèi);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者在快捷方式導(dǎo)航條,且文件夾處于打開(kāi)狀態(tài);
當(dāng)前所述應(yīng)用程序快捷方式的視圖在桌面或者快捷方式導(dǎo)航條,且該視圖所在的屏幕不在當(dāng)前桌面所在的屏幕。
B18、根據(jù)權(quán)利要求17所述的建立裝置,包括:
當(dāng)檢測(cè)不滿足預(yù)設(shè)條件時(shí)調(diào)用刷新函數(shù)繼續(xù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩。
B19、根據(jù)權(quán)利要求B13所述的建立裝置,包括:
計(jì)算所述灰色遮罩的面積,當(dāng)所述應(yīng)用程序下載進(jìn)度變化時(shí),按照下載進(jìn)度占總進(jìn)度的比例相應(yīng)地對(duì)所述灰色遮罩裁剪掉同等比例的面積以生成灰色進(jìn)度遮罩。
B20、根據(jù)權(quán)利要求B13所述的建立裝置,包括:
所述裁剪對(duì)應(yīng)于下載進(jìn)度的灰色進(jìn)度遮罩的方式包括扇形裁剪和條形裁剪。
B21、根據(jù)權(quán)利要求B13所述的建立裝置,包括:
所述灰色遮罩為半透明遮罩。
B22、根據(jù)權(quán)利要求B13所述的建立裝置,包括:
所述灰色遮罩層位于頂層,所述主題圖標(biāo)層位于所述灰色遮罩層的下一層。
B23、根據(jù)權(quán)利要求B13所述的建立裝置,還包括如下單元:
接收單元,用于接收應(yīng)用商店或者桌面的任何一個(gè)當(dāng)中對(duì)所述主題圖標(biāo)的進(jìn)度改變指令;
回調(diào)單元,用于根據(jù)相應(yīng)回調(diào)函數(shù)回調(diào)應(yīng)用程序或應(yīng)用商店,改變應(yīng)用程序的下載進(jìn)度。
B24、根據(jù)權(quán)利要求B13所述的建立裝置,包括:
在調(diào)用刷新函數(shù)刷新在所述主題圖標(biāo)上的灰色進(jìn)度遮罩時(shí),在所述主題圖標(biāo)下方顯示進(jìn)度條。
C25、一種便攜式移動(dòng)終端,包括:
觸敏顯示器,用于感知操作指令并根據(jù)該指令顯示相應(yīng)的界面;
存儲(chǔ)器,用于存儲(chǔ)支持收發(fā)裝置執(zhí)行上述下載過(guò)程中主題圖標(biāo)的建立方法的程序;
通信接口,用于上述下載過(guò)程中主題圖標(biāo)的建立裝置與其他設(shè)備或通信網(wǎng)絡(luò)通信;
一個(gè)或多個(gè)處理器,用于執(zhí)行所述存儲(chǔ)器中存儲(chǔ)的程序;
一個(gè)或多個(gè)應(yīng)用程序,其中所述一個(gè)或多個(gè)應(yīng)用程序被存儲(chǔ)在所述存儲(chǔ)器中并被配置為由所述一個(gè)或多個(gè)處理器執(zhí)行,所述一個(gè)或多個(gè)程序被配置為用于執(zhí)行權(quán)利要求A1至A12所述的任何方法。
以上對(duì)本發(fā)明所提供的一種下載過(guò)程中主題圖標(biāo)的建立方法及裝置進(jìn)行了詳細(xì)介紹,對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明實(shí)施例的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說(shuō)明書(shū)內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。