本公開的實施方式涉及桌面壁紙,更具體地,本公開的實施方式涉及一種桌面壁紙窗口與應用程序的交互方法及計算機程序產品。
背景技術:
1、本部分旨在為權利要求書中陳述的本公開的實施方式提供背景或上下文。此處的描述不因為包括在本部分中就承認是現(xiàn)有技術。
2、為了增強終端設備上桌面壁紙的多樣性和趣味性,相關技術提出了根據(jù)應用程序的數(shù)據(jù)內容動態(tài)生成桌面壁紙的方法。具體而言,這種方法依賴于electron框架創(chuàng)建一個無邊框且始終位于頂層的窗口,并通過調用特定api接口從應用程序中獲取數(shù)據(jù)內容。隨后,在該窗口內使用canavas或webgl技術生成與數(shù)據(jù)內容相對應的桌面壁紙。
3、然而,上述方式需要桌面壁紙窗口通過api接口定期輪詢應用程序以獲取最新的數(shù)據(jù)內容。由于輪詢頻率固定,所以桌面壁紙顯示的內容無法實時更新,不能準確反映應用程序內數(shù)據(jù)的最新狀態(tài)。并且,頻繁的輪詢操作會增加系統(tǒng)的負載,消耗較多系統(tǒng)資源,影響系統(tǒng)性能。
技術實現(xiàn)思路
1、在本公開實施方式的第一方面中,提供了一種桌面壁紙窗口與應用程序的交互方法,該方法應用于應用程序,所述方法包括:
2、確定所述應用程序的程序窗口對應的數(shù)據(jù)內容是否發(fā)生變化;
3、在所述數(shù)據(jù)內容發(fā)生變化的情況下,向窗口集合中的各個窗口廣播變化后的數(shù)據(jù)內容,其中,所述窗口集合包括桌面壁紙窗口,所述變化后的數(shù)據(jù)內容被所述桌面壁紙窗口用于更新桌面壁紙。
4、可選的,所述方法還包括:響應于在所述程序窗口內發(fā)起的交互操作,更新所述數(shù)據(jù)內容;和/或,接收來自所述桌面壁紙窗口的交互事件,更新所述數(shù)據(jù)內容。
5、可選的,在本地存儲有所述變化后的數(shù)據(jù)內容的情況下,所述變化后的數(shù)據(jù)內容從本地獲取;在本地并未存儲有所述變化后的數(shù)據(jù)內容的情況下,所述變化后的數(shù)據(jù)內容由服務器響應于所述應用程序所處終端的相應請求下發(fā)得到。
6、可選的,所述方法還包括:在廣播所述變化后的數(shù)據(jù)內容之前,從所述變化后的數(shù)據(jù)內容中篩選出用于生成桌面壁紙的壁紙數(shù)據(jù)內容;比較所述壁紙數(shù)據(jù)內容與緩存的歷史壁紙數(shù)據(jù)內容,所述歷史壁紙數(shù)據(jù)內容為所述應用程序上一次廣播的壁紙數(shù)據(jù)內容;所述向窗口集合中的各個窗口廣播變化后的數(shù)據(jù)內容,包括:在比較結果表明所述壁紙數(shù)據(jù)內容與所述歷史壁紙數(shù)據(jù)內容不相同的情況下,向所述各個窗口廣播所述壁紙數(shù)據(jù)內容,并存儲所述壁紙數(shù)據(jù)內容;以及,在所述比較結果表明所述壁紙數(shù)據(jù)內容與所述歷史壁紙數(shù)據(jù)內容相同的情況下,不廣播所述壁紙數(shù)據(jù)內容。
7、可選的,所述桌面壁紙由所述桌面壁紙窗口利用前端渲染技術生成。
8、在本公開實施方式的第二方面中,提供了一種桌面壁紙窗口和應用程序的交互方法,該方法應用于桌面壁紙窗口,所述方法包括:
9、接收應用程序廣播的數(shù)據(jù)內容,所述數(shù)據(jù)內容由所述應用程序在其程序窗口對應的數(shù)據(jù)內容發(fā)生變化的情況下進行廣播;
10、基于接收到的數(shù)據(jù)內容進行渲染,以生成與所述數(shù)據(jù)內容相匹配的桌面壁紙進行展示。
11、可選的,所述基于接收到的數(shù)據(jù)內容進行渲染,包括:利用前端渲染技術,基于接收到的數(shù)據(jù)內容進行渲染。
12、可選的,所述桌面壁紙上展示有至少一個交互元素,每一交互元素分別綁定相應的交互事件,所述方法還包括:響應于在所述桌面壁紙內發(fā)起的交互行為,確定所述交互行為對應的目標交互元素;將所述目標交互元素綁定的交互事件發(fā)送給所述應用程序,以使所述應用程序基于接收到的交互事件更新其程序窗口對應的數(shù)據(jù)內容。
13、可選的,所述確定所述交互行為對應的目標交互元素,包括:攔截所述交互行為在所述桌面壁紙上的位置信息;根據(jù)所述位置信息與各個交互元素分別對應的區(qū)域信息,確定所述目標交互元素。
14、在本公開實施方式的第三方面中,提供了一種電子設備,包括:
15、處理器;
16、用于存儲所述處理器可執(zhí)行指令的存儲器;
17、其中,所述處理器通過運行所述可執(zhí)行指令以實現(xiàn)如第一方面或第二方面中任一所述方法。
18、在本公開實施方式的第四方面中,提供了一種計算機可讀存儲介質,其上存儲有計算機指令,該指令被處理器執(zhí)行時實現(xiàn)如第一方面或第二方面中任一所述方法。
19、在本公開實施方式的第五方面中,提供了一種計算機程序產品,包括計算機程序/指令,該計算機程序/指令被處理器執(zhí)行時實現(xiàn)如第一方面或第二方面中任一所述方法的步驟。
20、本公開以上的實施方式,至少具有如下的有益效果:
21、本公開方案在應用程序確定自身程序窗口對應的數(shù)據(jù)內容發(fā)生變化的情況下,主動向窗口集合中的各個窗口廣播變化后的數(shù)據(jù)內容。窗口集合中包括桌面壁紙窗口,故而,桌面壁紙窗口可以根據(jù)接收到的數(shù)據(jù)內容更新桌面壁紙。如此,實現(xiàn)了根據(jù)應用程序內數(shù)據(jù)的變化實時更新桌面壁紙,能夠確保桌面壁紙顯示的內容與應用程序的程序窗口對應的數(shù)據(jù)內容保持同步。并且,相比接口輪詢的方式,廣播消息機制可以顯著降低系統(tǒng)資源的消耗,保障系統(tǒng)性能。
1.一種桌面壁紙窗口與應用程序的交互方法,其特征在于,該方法應用于應用程序,所述方法包括:
2.根據(jù)權利要求1所述的方法,其特征在于,還包括:
3.根據(jù)權利要求1所述的方法,其特征在于,
4.根據(jù)權利要求1所述的方法,其特征在于,
5.根據(jù)權利要求1所述的方法,其特征在于,所述桌面壁紙由所述桌面壁紙窗口利用前端渲染技術生成。
6.一種桌面壁紙窗口和應用程序的交互方法,其特征在于,該方法應用于桌面壁紙窗口,所述方法包括:
7.根據(jù)權利要求6所述的方法,其特征在于,所述桌面壁紙上展示有至少一個交互元素,每一交互元素分別綁定相應的交互事件,所述方法還包括:
8.一種電子設備,其特征在于,包括:
9.一種計算機可讀存儲介質,其上存儲有計算機指令,其特征在于,該指令被處理器執(zhí)行時實現(xiàn)如權利要求1-7中任一項所述的方法。
10.一種計算機程序產品,其特征在于,包括計算機程序/指令,該計算機程序/指令被處理器執(zhí)行時實現(xiàn)如權利要求1-7中任一項所述方法的步驟。