利用寄生工具包實現的視頻推送方法及裝置的制造方法
【專利摘要】本發明公開了一種利用寄生工具包實現的視頻推送方法及裝置。其中寄生工具包與主應用預先綁定,以提供在主應用的用戶界面中播放視頻的功能,該方法包括:根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息;根據主應用的屬性信息查詢預先建立的視頻數據庫,獲取與主應用的屬性信息相匹配的視頻資源;向用戶推送與視頻資源對應的視頻流,以在呈現主應用的用戶界面的同時播放視頻流,推送的視頻與主應用相關聯,實現了根據用戶興趣推送視頻,避免了所推送視頻與用戶興趣不相關而導致用戶流失的缺陷,實現了呈現主應用的用戶界面的同時播放視頻,解決了用戶只能單獨使用其他應用或視頻應用,而不能在操作其他應用時同時顯示視頻應用的界面的缺陷。
【專利說明】
利用寄生工具包實現的視頻推送方法及裝置
技術領域
[0001]本發明涉及智能終端技術領域,具體涉及一種利用寄生工具包實現的視頻推送方法及裝置。
【背景技術】
[0002]隨著智能終端的屏幕越來越大、CPU(Central Processing Unit,中央處理器)、內存、GPU(Graphics Processing Unit,圖形處理器)等硬件功能越來越強大,用戶對應用的需求也越來越高,例如用戶希望在操作其他應用的同時能夠觀看視頻。目前,如果終端在運行一個應用的同時想要運行視頻應用,終端是需要將當前運行應用的相關操作暫停,或者關閉當前運行應用的應用界面,然后才能切換到另一個應用的應用界面。例如,當用戶玩游戲的時候,需要觀看視頻,用戶需要暫停或退出正在玩的游戲才能觀看視頻;或者,通過設置視頻應用和其他應用的界面的顯示大小,才能同時顯示視頻應用和其他應用,用戶需要在各個應用的應用界面之間來回切換,給用戶的操作帶來不便,且并不能實現在顯示其他應用的用戶界面的同時播放視頻。此外,現有技術中,僅是向一些當前熱播的視頻推送給用戶,然而,并不一定是用戶當前想看的,這樣強制推送給用戶,很容易造成用戶的流失。
【發明內容】
[0003]鑒于上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的利用寄生工具包實現的視頻推送方法和相應的利用寄生工具包實現的視頻推送
目.ο
[0004]根據本發明的一個方面,提供了一種利用寄生工具包實現的視頻推送方法,其中寄生工具包與主應用預先綁定,以提供在主應用的用戶界面中播放視頻的功能,方法包括:
[0005]根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息;
[0006]根據主應用的屬性信息查詢預先建立的視頻數據庫,獲取與主應用的屬性信息相匹配的視頻資源;
[0007]向用戶推送與視頻資源對應的視頻流,以在呈現主應用的用戶界面的同時播放視頻流。
[0008]根據本發明的另一方面,提供了一種利用寄生工具包實現的視頻推送裝置,其中寄生工具包與主應用預先綁定,以提供在主應用的用戶界面中播放視頻的功能,裝置包括:
[0009]獲取模塊,適于根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息;
[0010]查詢模塊,適于根據主應用的屬性信息查詢預先建立的視頻數據庫,獲取與主應用的屬性信息相匹配的視頻資源;
[0011]推送模塊,適于向用戶推送與視頻資源對應的視頻流;
[0012]第一呈現模塊,適于在呈現主應用的用戶界面的同時播放視頻流。
[0013]根據本發明提供的方案,通過獲取主應用的屬性信息,根據主應用的屬性信息獲取到視頻資源,將與視頻資源對應的視頻流推送給用戶,所推送的視頻與主應用相關聯,實現了根據用戶興趣推送視頻,避免了所推送視頻與用戶興趣不相關而導致用戶流失的缺陷,實現了呈現主應用的用戶界面的同時播放視頻,解決了用戶只能單獨使用其他應用或視頻應用,而不能在操作其他應用時同時顯示視頻應用的界面的缺陷,克服了現有技術中當需要操作其他應用或視頻應用時,都需要切換到相應的應用,導致操作不便的問題,大大提高了用戶操作的簡便性,節省用戶時間。
[0014]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的【具體實施方式】。
【附圖說明】
[0015]通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0016]圖1示出了根據本發明一個實施例的利用寄生工具包實現的視頻推送方法的流程圖;
[0017]圖2示出了根據本發明另一個實施例的利用寄生工具包實現的視頻推送方法的流程圖;
[0018]圖3示出了根據本發明一個實施例的利用寄生工具包實現的視頻推送裝置的結構框圖。
【具體實施方式】
[0019]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
[0020]本發明的發明人在使用一些應用(例如,游戲應用)的過程中發現,在使用這些應用的時候,并不能在顯示應用的用戶界面的同時還播放視頻,即,用戶不能在使用這些應用的同時還能觀看視頻,用戶需要另外開啟視頻應用,然而,視頻應用和其他應用并不能同時在移動終端屏幕上顯示,在PC終端也需要通過設置視頻應用和其他應用的界面的顯示大小,才能同時顯示視頻應用和其他應用,若用戶想要對視頻應用或其他應用進行操作時,需要將光標定位到相應的應用,這樣很容易造成使用不便,為了解決上述問題,發明人經過創造性的勞動,提出了利用寄生工具包,將寄生工具包與主應用預先綁定,以提供在主應用的用戶界面中播放視頻的功能的解決方案。
[0021]其中,主應用是一獨立的應用,該應用可以獨立實現相應的功能,不需要依賴于任何其他的應用,例如,游戲應用,用戶在啟動游戲應用后,便可以在游戲應用所提供的用戶界面上玩游戲。
[0022]而該寄生工具包需要依賴于主應用才可以實現相應的功能,需要主應用調用該寄生工具包的API接口才能實現寄生工具包相應的功能,例如,以在游戲應用播放視頻為例,在用戶玩游戲的時候可以同時播放視頻,這里游戲應用為主應用,播放視頻是寄生工具包所實現的功能。
[0023]在向用戶推送視頻時,一般都是將當前正在熱播的視頻推送給用戶,然而,并不一定是用戶當前想看的,這樣強制推送給用戶,很容易造成用戶的流失。
[0024]圖1示出了根據本發明一個實施例的利用寄生工具包實現的視頻推送方法的流程圖。如圖1所示,該方法包括以下步驟:
[0025]步驟S100,根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息。
[0026]主應用的屬性信息可以包括主應用的標識、主應用的版本信息、主應用的開發商等各種信息,這里不一一列舉說明。
[0027]在本發明實施例中,主應用的屬性信息是在Manifest.xml文件中進行配置的,而PackageInfo類則封裝了從該配置文件中獲取的所有信息,描述了主應用工具包的整體信息,因此,可以使用P a c k a g e I n f ο對象的相應屬性獲取主應用的屬性信息,例如,PackageInf ο對象的vers1nName屬性獲取應用的版本號。可以通過PackageManager對象來獲取PackageInf ο對象。PackageManager是一個檢索當前已安裝在終端上的相關應用程序工具包的各種屬性信息的類。PackageManager對象中的getPackage Inf ο方法可以獲取Package Info 對象。
[0028]步驟SlOl,根據主應用的屬性信息查詢預先建立的視頻數據庫,獲取與主應用的屬性信息相匹配的視頻資源。
[0029]視頻數據庫是服務器側的數據庫,在視頻數據庫中預先存儲了大量視頻資源,在根據步驟SlOO獲取到主應用的屬性信息后,終端將獲取到的主應用的分類信息發送至服務器,服務器可以根據獲取到的主應用的屬性信息去查詢預先建立的視頻數據庫,獲取與主應用的屬性信息相匹配的視頻資源,其中,視頻資源指的是視頻。
[0030]步驟S102,向用戶推送與視頻資源對應的視頻流,以在呈現主應用的用戶界面的同時播放視頻流。
[0031]將步驟SlOl中獲取到的與主應用的屬性信息相匹配的視頻資源對應的視頻流推送給用戶,在呈現主應用的用戶界面的同時播放視頻流,從而實現了既使用主應用又能夠觀看視頻的效果。
[0032]根據本發明上述實施例提供的方法,通過獲取主應用的屬性信息,根據主應用的屬性信息獲取到視頻資源,將與視頻資源對應的視頻流推送給用戶,所推送的視頻與主應用相關聯,實現了根據用戶興趣推送視頻,避免了所推送視頻與用戶興趣不相關而導致用戶流失的缺陷,實現了呈現主應用的用戶界面的同時播放視頻,解決了用戶只能單獨使用其他應用或視頻應用,而不能在操作其他應用時同時顯示視頻應用的界面的缺陷,克服了現有技術中當需要操作其他應用或視頻應用時,都需要切換到相應的應用,導致操作不便的問題,大大提高了用戶操作的簡便性,節省用戶時間。
[0033]圖2示出了根據本發明另一個實施例的利用寄生工具包實現的視頻推送方法的流程圖。如圖2所示,該方法包括以下步驟:
[0034]步驟S200,主應用啟動時,在主應用的用戶界面中呈現視頻播放入口。
[0035]具體地,用戶在觸發主應用的圖標后,啟動主應用,啟動主應用時,在主應用的用戶界面中呈現視頻播放入口,其中,視頻播放入口可以以浮力球的形式展現。
[0036]步驟S201,根據用戶觸發視頻播放入口的行為,創建懸浮窗,其中懸浮窗的尺寸小于主應用的用戶界面的尺寸。
[0037]具體地,當用戶想要在主應用中觀看視頻時,可以通過觸發視頻播放入口的方式啟動播放視頻,在檢測到用戶觸發視頻播放入口后,根據用戶的該行為,創建Floatwindow。F1atwindow的創建涉及到WindowManager接口,實現類有WindowManagerImpI,CompatModefcapper,Local WindowManager。具體地,寄生工具包的代碼啟動一個 Serv ice,然后在Service中創建懸浮窗。在創建懸浮窗時,需要設置懸浮窗的窗口位置參數和窗口尺寸參數(包含width和height)。懸浮窗的窗口位置參數和窗口尺寸參數決定了懸浮窗以預設尺寸顯示在終端屏幕的預設位置。為了不影響用戶使用其他應用,懸浮窗的預設尺寸應小于終端屏幕的尺寸。
[0038]懸浮窗是存在終端屏幕之上的浮動窗口,懸浮窗不隸屬于Activity界面,也不受Activity界面的覆蓋影響,但與Activity的生命周期相同。
[0039 ]步驟S202,在懸浮窗內嵌入視頻播放器。
[0040]在創建懸浮窗之后,在懸浮窗內嵌入視頻播放器,該視頻播放器可以用于顯示視頻流。其中,視頻播放器通過窗口視圖來實現。
[0041]具體地,為了能夠使該懸浮窗顯示用戶所啟動的視頻服務的用戶界面,在創建懸浮窗之后,可以在懸浮窗內嵌入窗口視圖,創建窗口視圖的繪圖表面,該窗口視圖用于繪制視頻界面。這里窗口視圖可以為任何能夠顯示視頻服務所提供的用戶界面的視圖,本發明對此不作限制。本實施例以第一窗口視圖為surfaceview視圖為例進行說明。
[0042]在Android系統中,surfaceview具有獨立的繪圖表面,它不與其宿主窗口共享同一個繪圖表面。由于具有獨立的繪圖表面,因此surfaceview的用戶界面可在一個獨立的線程中進行繪制,而且又不會占用主線程資源。surfaceview—方面可以實現復雜而高效的UI繪制,另一方面又不會導致用戶輸入得不到及時響應。因此,使用surfaceview作為窗口視圖嵌入到懸浮窗中,可以實現復雜和高效的繪制。
[0043]步驟S203,根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息。
[0044]主應用的屬性信息可以包括主應用的標識、主應用的版本信息、主應用的開發商等各種信息,這里不一一列舉說明。
[0045]在本發明實施例中,主應用的屬性信息是在Manifest.xml文件中進行配置的,而PackageInfo類則封裝了從該配置文件中獲取的所有信息,描述了主應用工具包的整體信息,因此,可以使用P a c k a g e I n f ο對象的相應屬性獲取主應用的屬性信息,例如,PackageInf ο對象的vers1nName屬性獲取應用的版本號。可以通過PackageManager對象來獲取PackageInf ο對象。PackageManager是一個檢索當前已安裝在終端上的相關應用程序工具包的各種屬性信息的類。PackageManager對象中的getPackage Inf ο方法可以獲取Package Info 對象。
[0046]步驟S204,根據主應用的屬性信息確定主應用的分類信息。
[0047]主應用可以標識為用戶當前的興趣方向,為了避免推送給用戶的視頻并不能滿足用戶的需求,導致用戶流失的缺陷,可以根據用戶當前使用的主應用來確定向用戶推送的視頻。具體地,在獲取到主應用的屬性信息后,根據所獲取到的主應用的屬性信息,例如,主應用的標識可以確定主應用的分類信息,例如主應用屬于游戲類。
[0048]步驟S205,根據主應用的分類信息查詢預先建立的視頻數據庫,獲取與主應用分類信息相匹配的視頻資源。
[0049]其中,視頻數據庫是服務器側的數據庫,在視頻數據庫中預先存儲了大量視頻資源,在根據步驟S204確定主應用的分類信息后,終端將獲取到的主應用的分類信息發送至服務器,服務器可以根據獲取到的主應用的分類信息去查詢預先建立的視頻數據庫,獲取與主應用的分類信息相匹配的視頻資源,其中,視頻資源指的是視頻。
[0050]步驟S206,將與視頻資源對應的視頻流傳輸給視頻播放器,通過懸浮窗向用戶推送視頻流,以在呈現主應用的用戶界面的同時在懸浮窗內播放視頻流。
[0051]具體地,服務器在獲取與主應用的分類信息相匹配的視頻資源后,將視頻資源返回給終端,寄生工具包控制窗口視圖在其繪圖表面繪制視頻流對應的視頻界面,在所繪制的視頻界面內顯示視頻流,實現了在呈現主應用的用戶界面的同時在懸浮窗內播放視頻流。
[0052]以“憤怒的小鳥”為主應用舉例說明,在確定出其為游戲分類后,根據其分類信息查詢預先建立的視頻數據庫,獲取與主應用分類信息相匹配的視頻資源,如電影“憤怒的小鳥”,將電影“憤怒的小鳥”對應的視頻流傳輸給視頻播放器,通過懸浮窗向用戶推送“憤怒的小鳥”對應的視頻流,以在呈現主應用“憤怒的小鳥”的用戶界面的同時在懸浮窗內播放電影“憤怒的小鳥”。
[0053]步驟S207,接收用戶輸入的停止播放視頻請求。
[0054]若用戶不想再觀看視頻,可以選擇停止播放視頻,通過觸發懸浮窗上提供的關閉按鈕,來關閉懸浮窗,在監測到用戶觸發關閉按鈕后,即可將觸發關閉按鈕的操作作為用戶輸入的停止播放視頻請求。
[0055]步驟S208,根據停止播放視頻請求,執行關閉懸浮窗的操作,停止播放視頻。
[0056]在接收到用戶輸入的停止播放視頻請求后,根據該停止播放視頻請求,關閉懸浮窗,停止播放視頻,此時,終端屏幕上可僅顯示主應用的用戶界面,使得用戶可以根據需求靈活選擇是否播放視頻。
[0057]根據本發明上述實施例提供的方法,通過獲取主應用的屬性信息,根據主應用的屬性信息獲取到視頻資源,將與視頻資源對應的視頻流推送給用戶,所推送的視頻與主應用相關聯,實現了根據用戶興趣推送視頻,避免了所推送視頻與用戶興趣不相關而導致用戶流失的缺陷。進一步的,通過創建懸浮窗,在懸浮窗內嵌入視頻播放器,將視頻流傳輸給視頻播放器,實現了呈現主應用的用戶界面的同時播放視頻,解決了用戶只能單獨使用其他應用或視頻應用,而不能在操作其他應用時同時顯示視頻應用的界面的缺陷,克服了現有技術中當需要操作其他應用或視頻應用時,都需要切換到相應的應用,導致操作不便的問題,大大提高了用戶操作的簡便性,節省用戶時間。
[0058]圖3示出了根據本發明一個實施例的利用寄生工具包實現的視頻推送裝置的結構框圖。如圖3所示,該裝置包括:獲取模塊300、查詢模塊310、推送模塊320和第一呈現模塊330。
[0059]獲取模塊300,適于根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息。
[0060]主應用的屬性信息可以包括主應用的標識、主應用的版本信息、主應用的開發商等各種信息,這里不一一列舉說明。
[0061]在本發明實施例中,主應用的屬性信息是在Manifest.xml文件中進行配置的,而PackageInfo類則封裝了從該配置文件中獲取的所有信息,描述了主應用工具包的整體信息,因此,可以使用P a c k a g e I n f ο對象的相應屬性獲取主應用的屬性信息,例如,PackageInf ο對象的vers1nName屬性獲取應用的版本號。可以通過PackageManager對象來獲取PackageInf ο對象。PackageManager是一個檢索當前已安裝在終端上的相關應用程序工具包的各種屬性信息的類。PackageManager對象中的getPackage Inf ο方法可以獲取Package Info 對象。
[0062]查詢模塊310,適于根據主應用的屬性信息查詢預先建立的視頻數據庫,獲取與主應用的屬性信息相匹配的視頻資源。
[0063]視頻數據庫是服務器側的數據庫,在視頻數據庫中預先存儲了大量視頻資源,在獲取到主應用的屬性信息后,終端將獲取到的主應用的分類信息發送至服務器,服務器可以根據獲取到的主應用的屬性信息去查詢預先建立的視頻數據庫,獲取與主應用的屬性信息相匹配的視頻資源,其中,視頻資源指的是視頻。
[0064]推送模塊320,適于向用戶推送與視頻資源對應的視頻流。
[0065]第一呈現模塊330,適于在呈現主應用的用戶界面的同時播放視頻流。
[0066]進一步的,該裝置還包括:第二呈現模塊340,適于主應用啟動時,在主應用的用戶界面中呈現視頻播放入口。
[0067]具體地,用戶在觸發主應用的圖標后,啟動主應用,啟動主應用時,在主應用的用戶界面中呈現視頻播放入口,其中,視頻播放入口可以以浮力球的形式展現。
[0068]創建模塊350,適于根據用戶觸發視頻播放入口的行為,創建懸浮窗;其中懸浮窗的尺寸小于主應用的用戶界面的尺寸。
[0069]具體地,當用戶想要在主應用中觀看視頻時,可以通過觸發視頻播放入口的方式啟動播放視頻,在檢測到用戶觸發視頻播放入口后,根據用戶的該行為,創建Floatwindow。F1atwindow的創建涉及到WindowManager接口,實現類有WindowManagerImpI,CompatModefcapper,Local WindowManager。具體地,寄生工具包的代碼啟動一個 Serv ice,然后在Service中創建懸浮窗。在創建懸浮窗時,需要設置懸浮窗的窗口位置參數和窗口尺寸參數(包含width和height)。懸浮窗的窗口位置參數和窗口尺寸參數決定了懸浮窗以預設尺寸顯示在終端屏幕的預設位置。為了不影響用戶使用其他應用,懸浮窗的預設尺寸應小于終端屏幕的尺寸。
[0070]懸浮窗是存在終端屏幕之上的浮動窗口,懸浮窗不隸屬于Activity界面,也不受Activity界面的覆蓋影響,但與Activity的生命周期相同。
[0071 ]嵌入模塊360,適于在懸浮窗內嵌入視頻播放器。
[0072]其中,視頻播放器通過窗口視圖來實現,具體地,窗口視圖為surfaceview視圖。
[0073]推送模塊320進一步適于:將與視頻資源對應的視頻流傳輸給視頻播放器,通過懸浮窗向用戶推送視頻流。
[0074]第一呈現模塊330進一步適于:在呈現主應用的用戶界面的同時在懸浮窗內播放視頻流。
[0075]嵌入模塊360進一步適于:在懸浮窗內嵌入窗口視圖,創建窗口視圖的繪圖表面。
[0076]具體地,為了能夠使該懸浮窗顯示用戶所啟動的視頻服務的用戶界面,在創建懸浮窗之后,可以在懸浮窗內嵌入窗口視圖,創建窗口視圖的繪圖表面,該窗口視圖用于繪制視頻界面。這里窗口視圖可以為任何能夠顯示視頻服務所提供的用戶界面的視圖,本發明對此不作限制。本實施例以第一窗口視圖為surfaceview視圖為例進行說明。
[0077]在Andro id系統中,surf aceview具有獨立的繪圖表面,它不與其宿主窗口共享同一個繪圖表面。由于具有獨立的繪圖表面,因此surfaceview的用戶界面可在一個獨立的線程中進行繪制,而且又不會占用主線程資源。surfaceview—方面可以實現復雜而高效的UI繪制,另一方面又不會導致用戶輸入得不到及時響應。因此,使用surfaceview作為窗口視圖嵌入到懸浮窗中,可以實現復雜和高效的繪制。
[0078]進一步的,第二呈現模塊340還適于:控制窗口視圖在繪圖表面繪制視頻流對應的視頻界面。
[0079]進一步的,查詢模塊310進一步包括:確定單元311,適于根據主應用的屬性信息確定主應用的分類信息。
[0080]主應用可以標識為用戶當前的興趣方向,為了避免推送給用戶的視頻并不能滿足用戶的需求,導致用戶流失的缺陷,可以根據用戶當前使用的主應用來確定向用戶推送的視頻。具體地,在獲取到主應用的屬性信息后,根據所獲取到的主應用的屬性信息,例如,主應用的標識可以確定主應用的分類信息,例如主應用屬于游戲類。
[0081]查詢單元312,適于根據主應用的分類信息查詢預先建立的視頻數據庫,獲取與主應用分類信息相匹配的視頻資源。
[0082]其中,視頻數據庫預先存儲了大量視頻資源,在確定主應用的分類信息后,可以根據獲取到的主應用的分類信息去查詢預先建立的視頻數據庫,獲取與主應用的分類信息相匹配的視頻資源,其中,視頻資源指的是視頻。
[0083]進一步的,該裝置還包括:接收模塊370,適于接收用戶輸入的停止播放視頻請求。
[0084]停止模塊380,適于根據停止播放視頻請求,執行關閉懸浮窗的操作,停止播放視頻。
[0085]根據本發明上述實施例提供的裝置,通過獲取主應用的屬性信息,根據主應用的屬性信息獲取到視頻資源,將與視頻資源對應的視頻流推送給用戶,所推送的視頻與主應用相關聯,實現了根據用戶興趣推送視頻,避免了所推送視頻與用戶興趣不相關而導致用戶流失的缺陷。進一步的,通過創建懸浮窗,在懸浮窗內嵌入視頻播放器,將視頻流傳輸給視頻播放器,實現了呈現主應用的用戶界面的同時播放視頻,解決了用戶只能單獨使用其他應用或視頻應用,而不能在操作其他應用時同時顯示視頻應用的界面的缺陷,克服了現有技術中當需要操作其他應用或視頻應用時,都需要切換到相應的應用,導致操作不便的問題,大大提高了用戶操作的簡便性,節省用戶時間。
[0086]在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基于在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定編程語言。應當明白,可以利用各種編程語言實現在此描述的本發明的內容,并且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。
[0087]在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0088]類似地,應當理解,為了精簡本公開并幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面的權利要求書所反映的那樣,發明方面在于少于前面公開的單個實施例的所有特征。因此,遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身都作為本發明的單獨實施例。
[0089]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變并且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
[0090]此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0091]本發明的各個部件實施例可以以硬件實現,或者以在一個或者多個處理器上運行的軟件模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數字信號處理器(DSP)來實現根據本發明實施例的利用寄生工具包實現的視頻推送設備中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用于執行這里所描述的方法的一部分或者全部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0092]應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
[0093]本發明公開了:A1、一種利用寄生工具包實現的視頻推送方法,其中所述寄生工具包與主應用預先綁定,以提供在所述主應用的用戶界面中播放視頻的功能,所述方法包括:
[0094]根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息;
[0095]根據所述主應用的屬性信息查詢預先建立的視頻數據庫,獲取與所述主應用的屬性信息相匹配的視頻資源;
[0096]向用戶推送與所述視頻資源對應的視頻流,以在呈現所述主應用的用戶界面的同時播放所述視頻流。
[0097]A2、根據Al所述的方法,其中,在根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息之前,所述方法還包括:
[0098]主應用啟動時,在主應用的用戶界面中呈現視頻播放入口 ;
[0099]根據用戶觸發所述視頻播放入口的行為,創建懸浮窗,在懸浮窗內嵌入視頻播放器;其中所述懸浮窗的尺寸小于所述主應用的用戶界面的尺寸;
[0100]所述向用戶推送與所述視頻資源對應的視頻流進一步包括:
[0101 ]將與所述視頻資源對應的視頻流傳輸給所述視頻播放器,通過所述懸浮窗向用戶推送所述視頻流,以在呈現所述主應用的用戶界面的同時在所述懸浮窗內播放所述視頻流。
[0102]A3、根據A2所述的方法,其中,所述視頻播放器通過窗口視圖來實現;
[0103]所述在懸浮窗內嵌入視頻播放器進一步包括:在懸浮窗內嵌入窗口視圖,創建窗口視圖的繪圖表面。
[0104]A4、根據A3所述的方法,其中,所述在懸浮窗內播放所述視頻流進一步包括:控制所述窗口視圖在繪圖表面繪制所述視頻流對應的視頻界面。
[0?05] A5、根據A3或A4所述的方法,其中,所述窗口視圖為surf aceview視圖。
[0106]A6、根據A1-A5任一項所述的方法,其中,所述根據所述主應用的屬性信息查詢預先建立的視頻數據庫,獲取與所述主應用的屬性信息相匹配的視頻資源進一步包括:
[0107]根據所述主應用的屬性信息確定主應用的分類信息;
[0108]根據所述主應用的分類信息查詢預先建立的視頻數據庫,獲取與所述主應用分類信息相匹配的視頻資源。
[0109]A7、根據A1-A6任一項所述的方法,其中,所述方法還包括:接收用戶輸入的停止播放視頻請求;
[0110]根據所述停止播放視頻請求,執行關閉懸浮窗的操作,停止播放視頻。
[0111]本發明還公開了:B8、一種利用寄生工具包實現的視頻推送裝置,其中所述寄生工具包與主應用預先綁定,以提供在所述主應用的用戶界面中播放視頻的功能,所述裝置包括:
[0112]獲取模塊,適于根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息;
[0113]查詢模塊,適于根據所述主應用的屬性信息查詢預先建立的視頻數據庫,獲取與所述主應用的屬性信息相匹配的視頻資源;
[0114]推送模塊,適于向用戶推送與所述視頻資源對應的視頻流;
[0115]第一呈現模塊,適于在呈現所述主應用的用戶界面的同時播放所述視頻流。
[0116]B9、根據B8所述的裝置,其中,所述裝置還包括:第二呈現模塊,適于主應用啟動時,在主應用的用戶界面中呈現視頻播放入口 ;
[0117]創建模塊,適于根據用戶觸發所述視頻播放入口的行為,創建懸浮窗;其中所述懸浮窗的尺寸小于所述主應用的用戶界面的尺寸;
[0118]嵌入模塊,適于在懸浮窗內嵌入視頻播放器;
[0119]所述推送模塊進一步適于:將與所述視頻資源對應的視頻流傳輸給所述視頻播放器,通過所述懸浮窗向用戶推送所述視頻流;
[0120]所述第一呈現模塊進一步適于:在呈現所述主應用的用戶界面的同時在所述懸浮窗內播放所述視頻流。
[0121 ] B10、根據B9所述的裝置,其中,所述視頻播放器通過窗口視圖來實現;
[0122]所述嵌入模塊進一步適于:在懸浮窗內嵌入窗口視圖,創建窗口視圖的繪圖表面。
[0123]B11、根據BlO所述的裝置,其中,所述第二呈現模塊還適于:控制所述窗口視圖在繪圖表面繪制所述視頻流對應的視頻界面。
[0124]B12、根據B9或BlO所述的裝置,其中,所述窗口視圖為surfaceview視圖。
[0125]B13、根據B8-B12任一項所述的裝置,其中,所述查詢模塊進一步包括:確定單元,適于根據所述主應用的屬性信息確定主應用的分類信息;
[0126]查詢單元,適于根據所述主應用的分類信息查詢預先建立的視頻數據庫,獲取與所述主應用分類信息相匹配的視頻資源。
[0127]B14、根據B8-B13任一項所述的裝置,其中,所述裝置還包括:接收模塊,適于接收用戶輸入的停止播放視頻請求;
[0128]停止模塊,適于根據所述停止播放視頻請求,執行關閉懸浮窗的操作,停止播放視頻。
【主權項】
1.一種利用寄生工具包實現的視頻推送方法,其中所述寄生工具包與主應用預先綁定,以提供在所述主應用的用戶界面中播放視頻的功能,所述方法包括: 根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息; 根據所述主應用的屬性信息查詢預先建立的視頻數據庫,獲取與所述主應用的屬性信息相匹配的視頻資源; 向用戶推送與所述視頻資源對應的視頻流,以在呈現所述主應用的用戶界面的同時播放所述視頻流。2.根據權利要求1所述的方法,其中,在根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息之前,所述方法還包括: 主應用啟動時,在主應用的用戶界面中呈現視頻播放入口 ; 根據用戶觸發所述視頻播放入口的行為,創建懸浮窗,在懸浮窗內嵌入視頻播放器;其中所述懸浮窗的尺寸小于所述主應用的用戶界面的尺寸; 所述向用戶推送與所述視頻資源對應的視頻流進一步包括: 將與所述視頻資源對應的視頻流傳輸給所述視頻播放器,通過所述懸浮窗向用戶推送所述視頻流,以在呈現所述主應用的用戶界面的同時在所述懸浮窗內播放所述視頻流。3.根據權利要求2所述的方法,其中,所述視頻播放器通過窗口視圖來實現; 所述在懸浮窗內嵌入視頻播放器進一步包括:在懸浮窗內嵌入窗口視圖,創建窗口視圖的繪圖表面。4.根據權利要求3所述的方法,其中,所述在懸浮窗內播放所述視頻流進一步包括:控制所述窗口視圖在繪圖表面繪制所述視頻流對應的視頻界面。5.根據權利要求3或4所述的方法,其中,所述窗口視圖為surfaceview視圖。6.根據權利要求1-5任一項所述的方法,其中,所述根據所述主應用的屬性信息查詢預先建立的視頻數據庫,獲取與所述主應用的屬性信息相匹配的視頻資源進一步包括: 根據所述主應用的屬性信息確定主應用的分類信息; 根據所述主應用的分類信息查詢預先建立的視頻數據庫,獲取與所述主應用分類信息相匹配的視頻資源。7.根據權利要求1-6任一項所述的方法,其中,所述方法還包括:接收用戶輸入的停止播放視頻請求; 根據所述停止播放視頻請求,執行關閉懸浮窗的操作,停止播放視頻。8.—種利用寄生工具包實現的視頻推送裝置,其中所述寄生工具包與主應用預先綁定,以提供在所述主應用的用戶界面中播放視頻的功能,所述裝置包括: 獲取模塊,適于根據用戶觸發的視頻播放的行為,獲取主應用的屬性信息; 查詢模塊,適于根據所述主應用的屬性信息查詢預先建立的視頻數據庫,獲取與所述主應用的屬性信息相匹配的視頻資源; 推送模塊,適于向用戶推送與所述視頻資源對應的視頻流; 第一呈現模塊,適于在呈現所述主應用的用戶界面的同時播放所述視頻流。9.根據權利要求8所述的裝置,其中,所述裝置還包括:第二呈現模塊,適于主應用啟動時,在主應用的用戶界面中呈現視頻播放入口 ; 創建模塊,適于根據用戶觸發所述視頻播放入口的行為,創建懸浮窗;其中所述懸浮窗的尺寸小于所述主應用的用戶界面的尺寸; 嵌入模塊,適于在懸浮窗內嵌入視頻播放器; 所述推送模塊進一步適于:將與所述視頻資源對應的視頻流傳輸給所述視頻播放器,通過所述懸浮窗向用戶推送所述視頻流; 所述第一呈現模塊進一步適于:在呈現所述主應用的用戶界面的同時在所述懸浮窗內播放所述視頻流。10.根據權利要求9所述的裝置,其中,所述視頻播放器通過窗口視圖來實現; 所述嵌入模塊進一步適于:在懸浮窗內嵌入窗口視圖,創建窗口視圖的繪圖表面。
【文檔編號】H04N21/258GK105915933SQ201610482828
【公開日】2016年8月31日
【申請日】2016年6月27日
【發明人】方順豹, 杜澤旭, 郭宇卓
【申請人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司