一種建立桌面圖標的方法和裝置與流程
2023-05-13 05:16:52 3

本發明涉及計算機應用技術領域,特別涉及一種建立桌面圖標的方法和裝置。
背景技術:
諸如手機、平板電腦、PC等智能設備,在一個應用(APP)被安裝後,可以在桌面上創建該已安裝應用的圖標。該桌面上的圖標實際上是該應用的快捷方式,當用戶點擊桌面上的圖標時,能夠直接打開該桌面圖標所指向的應用,進入該應用的界面。但目前的實現方式都是針對一個應用創建桌面圖標,但隨著應用的不斷豐富,當用戶很頻繁地使用一個應用中某個具體功能插件,但仍需要先點擊該應用的桌面圖標進入應用後,在從該應用中找到該功能插件對應的控制項並點擊進入該功能插件對應的界面。
技術實現要素:
有鑑於此,本發明提供了一種建立桌面圖標的方法和裝置,以便於方便用戶直接使用應用中的功能插件,簡化用戶操作。
具體技術方案如下:
本發明提供了一種建立桌面圖標的方法,該方法包括:
宿主APP從提供給功能插件的接口接收添加桌面圖標的指令;
依據所述指令中包含的圖標信息和插件信息,調用作業系統提供的接口在桌面上建立指向所述功能插件的圖標。
根據本發明一優選實施方式,所述添加桌面圖標的指令是功能插件受到用戶的觸發後,調用所述宿主APP提供的接口發送的。
根據本發明一優選實施方式,所述調用作業系統提供的接口在桌面上建立指向所述功能插件的圖標包括:
所述宿主APP調用作業系統提供的接口,並發送生成桌面圖標的intent請求,該intent請求中包含所述圖標信息;
維護所述圖標信息與所述插件信息之間的指向關係。
根據本發明一優選實施方式,該方法還包括:
指向所述功能插件的圖標被點擊後,所述宿主APP啟動並從作業系統獲取被點擊圖標的信息;
調起所述被點擊圖標所指向的功能插件,展現所述功能插件的功能界面。
根據本發明一優選實施方式,在調起所述被點擊圖標所指向的功能插件之前還包括:
判斷所述被點擊圖標所指向的功能插件是否已安裝且支持該插件版本,如果是,則繼續執行調起所述功能插件的步驟;否則,調用作業系統提供的接口在桌面上刪除指向所述功能插件的圖標。
本發明還提供了一種建立桌面圖標的裝置,設置於宿主APP,該裝置包括:
指令接收單元,用於從所述宿主APP提供給功能插件的接口接收添加桌面圖標的指令;
圖標建立單元,用於依據所述指令中包含的圖標信息和插件信息,調用作業系統提供給所述宿主APP的接口在桌面上建立指向所述功能插件的圖標。
根據本發明一優選實施方式,所述添加桌面圖標的指令是功能插件受到用戶的觸發後,調用所述宿主APP提供的接口發送的。
根據本發明一優選實施方式,所述圖標建立單元,具體用於:調用作業系統提供給所述宿主APP的接口,並發送生成桌面圖標的intent請求,該intent請求中包含所述圖標信息;維護所述圖標信息與所述插件信息之間的指向關係。
根據本發明一優選實施方式,該裝置還包括:
參數獲取單元,用於指向所述功能插件的圖標被點擊後,所述宿主APP啟動時從作業系統獲取被點擊圖標的信息並提供給插件調起單元;
插件調起單元,用於調起所述被點擊圖標所指向的功能插件,展現所述功能插件的功能界面。
根據本發明一優選實施方式,該裝置還包括:
判斷單元,用於獲取所述參數獲取單元提供給插件調起單元的被點擊圖標的信息,判斷所述被點擊圖標所指向的功能插件是否已安裝且支持該插件版本,如果是,則觸發所述插件調起單元執行操作;否則,觸發圖標刪除單元執行操作;
圖標刪除單元,用於調用作業系統提供的接口在桌面上刪除指向所述功能插件的圖標。
由以上技術方案可以看出,通過本發明提供的方式能夠針對宿主APP中的具體功能插件建立桌面圖標,該桌面圖標直接指向功能插件,從而使得用戶能夠通過該指向功能插件的圖標直接進入功能插件的界面,縮短操作路徑,簡化用戶操作。
【附圖說明】
圖1為本發明實施例提供的建立桌面圖標的方法流程圖;
圖2a為本發明實施例提供的一種觸發安裝功能插件桌面圖標的示意圖;
圖2b為本發明實施例提供的另一種觸發安裝功能插件桌面圖標的示意圖;
圖2c為本發明實施例提供的創建的桌面圖標的實例圖;
圖2d為本發明實施例提供的圖標被觸發後展現的界面示意圖;
圖3為本發明實施例提供的點擊桌面圖標後執行的方法流程圖;
圖4為本發明實施例提供的裝置結構圖。
【具體實施方式】
為了使本發明的目的、技術方案和優點更加清楚,下面結合附圖和具體實施例對本發明進行詳細描述。
在本發明實施例中使用的術語是僅僅出於描述特定實施例的目的,而非旨在限制本發明。在本發明實施例和所附權利要求書中所使用的單數形式的「一種」、「所述」和「該」也旨在包括多數形式,除非上下文清楚地表示其他含義。
應當理解,本文中使用的術語「和/或」僅僅是一種描述關聯對象的關聯關係,表示可以存在三種關係,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。另外,本文中字符「/」,一般表示前後關聯對象是一種「或」的關係。
取決於語境,如在此所使用的詞語「如果」可以被解釋成為「在……時」或「當……時」或「響應於確定」或「響應於檢測」。類似地,取決於語境,短語「如果確定」或「如果檢測(陳述的條件或事件)」可以被解釋成為「當確定時」或「響應於確定」或「當檢測(陳述的條件或事件)時」或「響應於檢測(陳述的條件或事件)」。
圖1為本發明實施例提供的建立桌面圖標的方法流程圖,如圖1所示,該方法可以包括以下步驟:
在101中,功能插件受到用戶的觸發後,調用宿主APP提供的接口發送添加桌面圖標的指令。
針對功能插件添加圖標可以由用戶觸發,可以採用但不限於以下方式:
第一種方式:受到用戶觸發完成功能插件的安裝後,自動調用宿主APP提供的接口以發送添加桌面圖標的指令,或者提示用戶是否創建該功能插件的桌面圖標,若用戶選擇創建,則自動調用宿主APP提供的接口以發送添加桌面圖標的指令。
舉個例子,用戶在使用百度APP時,安裝了「貼吧」這一功能插件,在安裝完成後,可以彈出一個提示框,詢問用戶是否創建該功能插件的桌面圖標,如圖2a所示,如果用戶選擇是,則該功能插件調用百度APP提供的接口發送添加桌面圖標的指令給百度APP。
第二種方式:當用戶第一次打開功能插件時,自動調用宿主APP提供的接口以發送添加桌面圖標的指令,或者提示用戶是否創建該功能插件的桌面圖標,若用戶選擇創建,則自動調用宿主APP提供的接口以發送添加桌面圖標的指令。
舉個例子,用戶在使用百度APP時,安裝了「貼吧」這一功能插件後,若第一次點擊該功能插件進入貼吧,則可以彈出一個類似於圖2a中所示的提示框,詢問用戶是否創建該功能插件的桌面圖標,如果用戶選擇是,則該功能插件調用百度APP提供的接口發送添加桌面圖標的指令給百度APP。
第三種方式:用戶在使用功能插件的過程中,用戶可以通過功能插件向用戶提供的接口以發送添加桌面圖標的指令。
舉個例子,用戶在使用百度APP中的「貼吧」這一功能插件時,可以通過長按「貼吧」這一控制項後彈出的菜單中選擇「創建桌面圖標」這一選項,如圖2b所示,此時該功能插件調用百度APP提供的接口發送添加桌面圖標的指令給百度APP。
功能插件發送的指令中包含圖標信息和插件信息,圖標信息可以包括圖標的名稱或標識,還可以包括圖標內容,插件信息可以包括插件的名稱或標識。宿主APP提供的接口實際上就是一個方法,即功能插件調用該方法將圖標信息和插件信息作為參數傳遞給宿主APP。
在102中,宿主APP接收到該指令後,依據指令中包含的圖標信息和插件信息,調用作業系統提供的接口在桌面上建立指向該功能插件的圖標。
桌面圖標的創建是作業系統級別的操作,作業系統向各應用提供接口,各應用可以通過調用該接口創建桌面圖標。在本發明實施例中,宿主APP仍調用該接口,發送生成桌面圖標的intent請求,在該intent請求中包含的是功能插件的圖標信息,那麼最終在桌面上創建的就是指向該功能插件的圖標。作業系統維護的是創建該圖標的應用信息,即宿主APP的信息,圖標與功能插件的指向關係由宿主APP進行維護。
接續上面的例子,百度APP在桌面上創建指向功能插件「貼吧」的圖標,如圖2c所示,百度APP在桌面上有自己的圖標,即存在指向百度APP的桌面圖標,也存在指向「貼吧」的桌面圖標。
以上為建立功能插件的桌面圖標的流程,若用戶點擊指向功能插件的桌面圖標,則可以執行如圖3所示的流程,具體可以包括以下步驟:
在301中,指向功能插件的圖標被點擊後,宿主APP啟動並從作業系統獲取被點擊圖標的信息。
由於對於作業系統而言,其維護的是創建桌面圖標的應用信息,其並不能知曉和分辨該桌面圖標是宿主APP的還是功能插件的,因此其執行的流程與現有技術相同,都是捕捉到某桌面圖標被點擊後,依據其維護的創建桌面圖標的應用信息(例如依據應用的包名)啟動對應應用的線程。如果被點擊的圖標是指向某功能插件的,那麼宿主APP會被啟動,作業系統同時會將被點擊圖標的信息作為參數傳遞給宿主APP。
在302中,宿主APP判斷被點擊圖標所指向的功能插件是否已安裝且支持該插件版本,如果是,執行303;否則,執行304。
由於宿主APP中維護有圖標信息與功能插件之間的指向關係,因此能夠確定出被點擊圖標所指向的功能插件信息。在某些異常情況下,可能出現功能插件並未安裝成功卻創建了桌面圖標,或者宿主APP並不支持該插件版本,那麼在這些異常情況下,需要執行304。
對於已安裝的插件可以從插件安裝目錄中找到對應的插件信息,宿主APP可以從該插件安裝目錄中判斷被點擊圖標所指向的插件是否已安裝,另外從保存功能插件信息的資料庫中查詢該功能插件的版本信息,判斷宿主APP是否支持該版本。
在303中,宿主APP調起被點擊圖標所指向的功能插件,展現該功能插件的功能界面。
宿主APP直接調起被點擊圖標所指向的功能插件後,就可以直接進入到該功能插件的功能界面,而不必進入宿主APP的默認功能界面。
在304中,宿主APP調用作業系統提供的接口在桌面上刪除被點擊的圖標。
同樣,桌面圖標的刪除也是作業系統級別的操作,作業系統向各應用提供接口,各應用可以通過調用該接口刪除桌面圖標。在本發明實施例中,宿主APP仍調用該接口,發送刪除桌面圖標的intent請求,在該intent請求中包含要刪除的圖標信息,作業系統就能夠刪除該圖標。
舉一個例子,若用戶點擊如圖2c所示桌面上「貼吧」功能插件的桌面圖標,則直接進入貼吧的功能界面,如圖2d所示。而不必先進入百度APP的默認界面,然後再從該默認界面中點擊貼吧的控制項後跳轉到貼吧的功能界面,顯然節省了用戶操作,縮短了操作路徑。
以上是對本發明所提供方法進行的描述,下面結合實施例對本發明所提供的裝置進行詳細描述。圖4為本發明實施例提供的裝置結構圖,該裝置設置於宿主APP中,如圖4所示,該裝置可以包括:指令接收單元01和圖標建立單元02,還可以包括參數獲取單元03、插件調起單元04、判斷單元05和圖標刪除單元06,其中各組成單元的主要功能如下:
指令接收單元01負責從宿主APP提供給功能插件的接口接收添加桌面圖標的指令。
其中,添加桌面圖標的指令是功能插件受到用戶的觸發後,調用宿主APP提供的接口發送的,例如可以採用但不限於以下方式:
第一種方式:受到用戶觸發完成功能插件的安裝後,自動調用宿主APP提供的接口以發送添加桌面圖標的指令,或者提示用戶是否創建該功能插件的桌面圖標,若用戶選擇創建,則自動調用宿主APP提供的接口以發送添加桌面圖標的指令。
第二種方式:當用戶第一次打開功能插件時,自動調用宿主APP提供的接口以發送添加桌面圖標的指令,或者提示用戶是否創建該功能插件的桌面圖標,若用戶選擇創建,則自動調用宿主APP提供的接口以發送添加桌面圖標的指令。
第三種方式:用戶在使用功能插件的過程中,用戶可以通過功能插件向用戶提供的接口以發送添加桌面圖標的指令。
功能插件發送的指令中包含圖標信息和插件信息,圖標信息可以包括圖標的名稱或標識,還可以包括圖標內容,插件信息可以包括插件的名稱或標識。宿主APP提供的接口實際上就是一個方法,即功能插件調用該方法將圖標信息和插件信息作為參數傳遞給宿主APP。
圖標建立單元02負責依據指令中包含的圖標信息和插件信息,調用作業系統提供給宿主APP的接口在桌面上建立指向功能插件的圖標。具體地,圖標建立單元02可以調用作業系統提供給宿主APP的接口,並發送生成桌面圖標的intent請求,該intent請求中包含圖標信息;維護圖標信息與插件信息之間的指向關係。
由於對於作業系統而言,其維護的是創建桌面圖標的應用信息,其並不能知曉和分辨該桌面圖標是宿主APP的還是功能插件的,因此其執行的流程與現有技術相同,都是捕捉到某桌面圖標被點擊後,依據其維護的創建桌面圖標的應用信息(例如依據應用的包名)啟動對應應用的線程。如果被點擊的圖標是指向某功能插件的,那麼宿主APP會被啟動,作業系統同時會將被點擊圖標的信息作為參數傳遞給宿主APP。參數獲取單元03負責在指向功能插件的圖標被點擊後,宿主APP啟動時從作業系統獲取被點擊圖標的信息並提供給插件調起單元04。
插件調起單元04負責調起被點擊圖標所指向的功能插件,展現功能插件的功能界面。
優選地,插件調起單元04執行操作可以由判斷單元05觸發。判斷單元05負責獲取參數獲取單元03提供給插件調起單元04的被點擊圖標的信息,判斷被點擊圖標所指向的功能插件是否已安裝且支持該插件版本,如果是,則觸發插件調起單元04執行操作;否則,觸發圖標刪除單元06執行操作。
對於已安裝的插件可以從插件安裝目錄中找到對應的插件信息,判斷單元05可以從該插件安裝目錄中判斷被點擊圖標所指向的插件是否已安裝,另外從保存功能插件信息的資料庫中查詢該功能插件的版本信息,判斷宿主APP是否支持該版本。
圖標刪除單元06負責調用作業系統提供的接口在桌面上刪除指向功能插件的圖標。同樣,桌面圖標的刪除也是作業系統級別的操作,作業系統向各應用提供接口,各應用可以通過調用該接口刪除桌面圖標。在本發明實施例中,圖標刪除單元06仍調用該接口,發送刪除桌面圖標的intent請求,在該intent請求中包含要刪除的圖標信息,作業系統就能夠刪除該圖標。
有以上描述可以看出,本發明提供的方法和裝置可以具備以下優點:
1)通過本發明提供的方式能夠針對宿主APP中的具體功能插件建立桌面圖標,該桌面圖標直接指向功能插件,從而使得用戶能夠通過該指向功能插件的圖標直接進入功能插件的界面,縮短操作路徑,簡化用戶操作。
2)用戶能夠在使用宿主APP的過程中,根據使用功能插件的頻率和使用需求,靈活創建桌面圖標,提升用戶體驗。
在本發明所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用硬體加軟體功能單元的形式實現。
上述以軟體功能單元的形式實現的集成的單元,可以存儲在一個計算機可讀取存儲介質中。上述軟體功能單元存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,伺服器,或者網絡設備等)或處理器(processor)執行本發明各個實施例所述方法的部分步驟。而前述的存儲介質包括:U盤、移動硬碟、只讀存儲器(Read-Only Memory,ROM)、隨機存取存儲器(Random Access Memory,RAM)、磁碟或者光碟等各種可以存儲程序代碼的介質。
以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的範圍之內。