新四季網

針對應用程式的廣告進行攔截的方法及裝置製造方法

2023-06-15 07:28:46

針對應用程式的廣告進行攔截的方法及裝置製造方法
【專利摘要】本發明公開了一種針對應用程式的廣告進行攔截的方法及裝置,其中,所述方法包括:通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化;當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構;根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件,若是,利用所述廣告插件對應的特徵數據對所述窗口進行定向攔截。本發明實施例基於實時監控和準確的特徵攔截,可以精確的統計應用程式內廣告被攔截的次數,並且可以提供粒度細化到指定廣告插件的具體個數。
【專利說明】針對應用程式的廣告進行攔截的方法及裝置

【技術領域】
[0001]本發明涉及網絡安全【技術領域】,具體涉及一種針對應用程式的廣告進行攔截的方法及裝置。

【背景技術】
[0002]應用程式內置廣告是Android平臺上一種廣泛的盈利方式,常見的應用廣告展現模式包括內嵌廣告、通知欄廣告以及插屏廣告。目前應用開發者通常使用第三方廣告商所專門提供的廣告插件庫來進行廣告的動態展示,第三方廣告商通過獲取用戶的多種隱私數據來進行定向的廣告投放。隨著日益增多的小廣告商加入到安卓平臺,應用廣告從數量和展示形式上已經嚴重的影響了用戶對手機的正常使用,同時在線廣告的下載會佔用手機的上網流量,頻繁的展示也會明顯提升手機的耗電量。
[0003]目前,大多數手機安全廠商都以攔截手機應用廣告作為自身安全產品的一個重要功能點,但是主流的實現方式都存在明顯的缺陷。以某網際網路公司推出的手機管家和樂安全為例,這兩款安全產品都是通過手機中控制域名解析的HOSTS文件來進行廣告攔截,通過修改廣告插件網絡伺服器的域名解析地址的方式讓廣告插件無法在線下載和接收廣告推送,從而實現廣告攔截的功能。但是該方法存在以下幾個缺點:1)修改HOSTS文件需要重新掛載系統分區為可讀寫,這一操作本身就存在一定的風險,一旦重新掛載的操作中斷了作業系統本身對系統分區的1讀寫,手機會有很高的重啟機率。即使手機沒有重啟,系統分區處於可寫狀態也會大大降低系統本身的安全性。2)域名級別的攔截會導致廣告插件伺服器所在的整個域名上的服務全部無法被訪問,而很多大的廣告插件商在同一個域名上會同時運行除了廣告業務以外的其他業務,例如流量統計、用戶體驗計劃、流媒體服務等等,如果應用本身的功能對這些服務存在依賴,則會導致應用程式自身運行異常。3)很多小的廣告插件商在域名解析失敗之後,會直接使用IP位址訪問備用伺服器以繞開整個DNS過程,這種情況下該攔截方式就會實效。4)大部分廣告插件在在線抓取內容之後,會使用本地的緩存廣告進行展示,或者直接展示全黑色的背景,兩種方式都會極大的影響用戶體驗。


【發明內容】

[0004]鑑於上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的針對應用程式的廣告進行攔截的方法及裝置。
[0005]依據本發明的一個方面,提供一種針對應用程式的廣告進行攔截的方法,包括:通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化;當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構;根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件,若是,利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截。
[0006]優選的,還包括:採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接口 ;通過所述數據源接口獲取到窗口所屬的類信息以及包結構;根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於網絡視圖形式的廣告插件或惡意插件,若是,利用所述網絡視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0007]優選的,還包括:採用反射機制從已經實例化的內置插件對象中動態提取展示的點擊事件處理接口 ;通過所述點擊事件處理接口獲取到窗口所屬的類信息以及包結構;根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於圖像視圖形式的廣告插件或惡意插件,若是,利用所述圖像視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0008]優選的,還包括:判斷所述窗口所屬的包結構與所述應用程式所使用的包結構是否完全分布在兩個互相平行且完全不重疊的包結構內,如果是,則進一步精確確定所述窗口為廣告插件或惡意插件。
[0009]優選的,所述根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件包括:根據所述窗口所屬的類信息確定包名稱,並根據所述窗口所屬的包結構確定包路徑;根據所述包路徑中的多極目錄中每一級目錄的包名稱是否包含預先搜集的廣告廠商名稱、插件產品名稱來判定所述窗口是屬於某個廣告插件或惡意插件。
[0010]優選的,所述定向攔截是根據特徵數據僅對廣告插件或惡意插件對應的窗口進行攔截,而對應用程式的其它窗口不作攔截的處理。
[0011]優選的,所述利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截包括:預先在雲端先通過學習廣告插件樣本或惡意插件樣本來提取到多款廣告插件或惡意插件的通用特徵數據;使用這些通用特徵數據來對所述應用程式進行掃描,從而判斷出所述應用程式裡包含哪些已知的廣告插件或惡意插件;對掃描確定的廣告插件或惡意插件進行攔截。
[0012]優選的,所述掃描的方式為針對應用二進位文件中的固定代碼和固定字符串進行比對。
[0013]優選的,所述窗口包括廣告條和/或懸浮窗。
[0014]依據本發明的另一個方面,提供一種針對應用程式的廣告進行攔截的裝置,包括:監聽單元,用於通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化;獲取單元,用於當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構;控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件,若是,利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截。
[0015]優選的,還包括:數據源接口提取單元,用於採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接口 ;網絡視圖數據獲取單元,用於通過所述數據源接口獲取到窗口所屬的類信息以及包結構;網絡視圖控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於網絡視圖形式的廣告插件或惡意插件,若是,利用所述網絡視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0016]優選的,還包括:點擊事件處理接口提取單元,用於採用反射機制從已經實例化的內置插件對象中動態提取展示的點擊事件處理接口 ;圖像視圖數據獲取單元,用於通過所述點擊事件處理接口獲取到窗口所屬的類信息以及包結構;圖像視圖控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於圖像視圖形式的廣告插件或惡意插件,若是,利用所述圖像視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0017]優選的,還包括:插件精確判定單元,用於判斷所述窗口所屬的包結構與所述應用程式所使用的包結構是否完全分布在兩個互相平行且完全不重疊的包結構內,如果是,則進一步精確確定所述窗口為廣告插件或惡意插件。
[0018]優選的,所述控制單元具體用於:根據所述窗口所屬的類信息確定包名稱,並根據所述窗口所屬的包結構確定包路徑;根據所述包路徑中的多極目錄中每一級目錄的包名稱是否包含預先搜集的廣告廠商名稱、插件產品名稱來判定所述窗口是屬於某個廣告插件或惡意插件。
[0019]優選的,所述控制單元用於根據特徵數據僅對廣告插件或惡意插件對應的窗口進行攔截,而對應用程式的其它窗口不作攔截的處理。
[0020]優選的,所述控制單元具體用於:預先在雲端先通過學習廣告插件樣本或惡意插件樣本來提取到多款廣告插件或惡意插件的通用特徵數據;使用這些通用特徵數據來對所述應用程式進行掃描,從而判斷出所述應用程式裡包含哪些已知的廣告插件或惡意插件;對掃描確定的廣告插件或惡意插件進行攔截。
[0021]優選的,所述掃描的方式為針對應用二進位文件中的固定代碼和固定字符串進行比對。
[0022]優選的,所述窗口包括廣告條和/或懸浮窗。
[0023]本發明實施例基於實時監控和準確的特徵攔截,可以精確的統計應用程式內廣告被攔截的次數,並且可以提供粒度細化到指定廣告插件的具體個數。該數據可以提供給客戶端用以展示實時的攔截效果,大幅提高廣告攔截功能展示的強度以及用戶的感知度。
[0024]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,並且為了讓本發明的上述和其它目的、特徵和優點能夠更明顯易懂,以下特舉本發明的【具體實施方式】。

【專利附圖】

【附圖說明】
[0025]通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對於本領域普通技術人員將變得清楚明了。附圖僅用於示出優選實施方式的目的,而並不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0026]圖1示出了根據本發明一個實施例的針對應用程式的廣告進行攔截的方法流程圖;
[0027]圖2示出了根據本發明另一個實施例的針對應用程式的廣告進行攔截的方法流程圖;以及
[0028]圖3示出了根據本發明又一個實施例的針對應用程式的廣告進行攔截的方法流程圖。

【具體實施方式】
[0029]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這裡闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,並且能夠將本公開的範圍完整的傳達給本領域的技術人員。
[0030]為了更加有效和準確的攔截安卓系統的應用程式內的廣告,本發明提出了一種基於廣告代碼特徵的廣告攔截方法。
[0031]參見圖1,為本發明實施例提供的針對應用程式的廣告進行攔截的方法流程圖。
[0032]SlOl:通過應用程式的回調接口,動態監述應用程式的窗口布局變化;
[0033]S102:當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構;
[0034]S103:根據窗口所屬的類信息以及包結構判斷窗口是否屬於廣告插件,若是,利用廣告插件對應的特徵數據對窗口進行定向攔截。
[0035]可見,本發明實施例基於實時監控和準確的特徵攔截,可以精確的統計應用程式內廣告被攔截的次數,並且可以提供粒度細化到指定廣告插件的具體個數。該數據可以提供給客戶端用以展示實時的攔截效果,大幅提高廣告攔截功能展示的強度以及用戶的感知度。本領域技術人員了解,絕大多數形式的View(視圖)一般都是廣告插件商編寫的代碼,類信息就已經包含足夠的特徵,因此通過上述實施例方式可以對絕大多數形式的廣告插件進行識別和攔截。但是,WebView(網絡視圖)和ImageView(圖像視圖)是兩種比較特殊的廣告展現方式,這兩種View是系統自帶的,廣告插件只需要向裡面填內容,所以僅依賴View的類信息是無法判斷是廣告插件的(因為是系統自帶類)。
[0036]針對WebView(網絡視圖)和ImageView(圖像視圖)這兩種比較特殊的廣告插件,本發明實施例進一步採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接口(WebViewClient)和點擊事件處理接口(ClickerListener),從而實現這兩類廣告插件的識別和攔截。
[0037]因此,參見圖2,在本發明另一個實施例中,包括以下步驟:
[0038]S201:採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接Π ;
[0039]S202:通過數據源接口獲取到窗口所屬的類信息以及包結構;
[0040]S203:根據窗口所屬的類信息以及包結構判斷窗口是否屬於網絡視圖形式的廣告插件,若是,利用網絡視圖形式的廣告插件所對應的特徵數據對窗口進行定向攔截。
[0041]同理,參見圖3,在本發明又一個實施例中,包括以下步驟:
[0042]S302:採用反射機制從已經實例化的內置插件對象中動態提取展示的點擊事件處理接口 ;
[0043]S302:通過點擊事件處理接口獲取到窗口所屬的類信息以及包結構;
[0044]S302:根據窗口所屬的類信息以及包結構判斷窗口是否屬於圖像視圖形式的廣告插件,若是,利用圖像視圖形式的廣告插件所對應的特徵數據對窗口進行定向攔截。
[0045]可見,圖1所對應的實施例是採用實時監控機制可針對絕大多數廣告插件進行識別和攔截,圖2和圖3所對應的實施例是採用深層次的特徵提取機制針對兩類特殊形式的廣告插件進行識別和攔截。這兩者結合可保證攔截的廣度,對目前所知所有類型的廣告插件進行有效攔截。
[0046]下面對兩類攔截方法分別予以詳細說明。
[0047](I)實時的監控機制
[0048]概括而言,通過在應用程式內的每個Activity (活動)組件中動態註冊View樹狀結構的回調接口,動態監聽應用程式內窗口布局的變動,對於任何一個新增展示的廣告自窗口進行實時的監控。其中,Activity是安卓系統應用程式的一個核心組件類型,程序界面展示的實體;View樹指的是每個應用程式自身的所有窗口 View都是以樹形結構存放的,是由當前界面的多個視圖(控制項對象)構成的一個關係樹,在大多數作業系統的界面實現裡都是採用樹形的結構,這樣比較容易建立起父子、兄弟的關係描述。動態註冊回調接口需要找到整個View樹的根節點,根節點有一個固定的結構變化監控器ViewTreeObserver,調用監控器的addOnGlobalLayoutListener可以註冊回調以監聽整個ViewTree的節點變化。
[0049]因此,可以做到一旦應用程式內出現新增的廣告條和/或懸浮窗,都能通過反射機制獲取該窗口所屬的java類信息,同時根據該窗口所屬的包結構來對該窗口是否為廣告插件進行判定。其中,通過Java的GetClass反射接口可以獲取一個View對象所屬的類信息,關鍵的類信息包括類名、類加載器、包名稱。反射(Reflect1n)機制是一種Java語言的特性,指可以用通用的調用接口獲取到Java對象內部的成員和方法信息。Java包路徑是一個類似多級文件夾的全路徑,可以根據多級目錄中每一級目錄的名稱是否包含一些可以收集到的廣告廠商名稱、插件產品名稱來判定這個包路徑是屬於某個廣告插件的。
[0050]優選地,還可充分利用廣告插件SDK Jar包與應用程式本身所使用的包結構完全分布在兩個互相平行且完全不重疊的包結構內這一特點,做到對廣告插件的精確識別。其中,SDK是指廣告插件開發廠商提供給開發者的一套便於集成的代碼包,在Java開發平臺上代碼包大多以Jar包的形式包裝
[0051]最後,結合雲端在線查詢廣告包特徵的機制,做到針對每一款不同的廣告插件都可以使用對應的特徵數據進行定向攔截。具體的,是在雲端預先通過分析大量廣告插件樣本來提取到每一款廣告插件的通用特徵數據,然後使用這些特徵數據來對本地的應用程式進行掃描,以判斷出本地的應用程式裡包含哪些已知的廣告插件。掃描的具體方式為針對應用二進位文件中的固定代碼和固定字符串進行比對。對於實時監控到的廣告插件窗口,可以通過將窗口展示屬性設置為gone來達到不影響應用程式原始布局的效果,可極大提升廣告攔截的效果和用戶體驗。
[0052](2)深層次的特徵提取
[0053]利用反射機制,深層次判斷WebView形式和ImageView形式的廣告插件。
[0054]通過對廣告插件的攔截數據分析發現,存在超過半數的廣告插件開始採用使用安卓源生的內置控制項來進行廣告展示,由於源生控制項所屬的包結構為系統包,從而不能直接根據控制項的包結構來直接進行攔截。如前已述的,WebView和ImageView是兩種比較特殊的廣告展現方式,這兩種View是系統自帶的,廣告插件只需要向裡面填內容,所以僅依賴View的類信息就無法判斷是廣告(因為是系統自帶類)。其餘的形式View—般都是廣告插件自己寫的,類信息就已經包含足夠的特徵,按照方式(I)就可以完成攔截。
[0055]針對WebView形式和ImageView形式的的廣告插件,本方法採用反射從已經實例化的內置插件對象中動態提取展示的數據源接口 WebViewClient和點擊事件處理接口 ClickerListener,從而跳轉得到這兩類形式插件的類信息和包結構。其中,內置插件對象是指這些WebView和ImageView已經被實例化後的Java對象。針對WebView對象,它有一個固定的成員類型為WebViewClient,針對ImageView有一個固定的內部成員ClickListener,這兩個成員都有固定的Get接口可以獲取。
[0056]由於廣告插件商必須要實現插件點擊後跳轉到廣告信息所對應的展示頁,所以即使使用系統控制項,也必須用插件包內的數據接口和事件處理接口來處理系統控制項的內容展示以及點擊事件處理。因此,利用這兩者的代碼特徵,即可對此類廣告插件進行準確的判定,然後進行攔截。具體在雲端基於數據特徵的掃描方式和攔截方法與前述方式(I)類似,此處不贅述。
[0057]需要說明的是,除了廣告插件,本發明實施例還適用於對惡意插件進行定向攔截。其中,惡意插件是指在用戶不知情或違背用戶意願情況下執行某個功能的插件。以上實施例雖然僅以廣告插件進行說明,本領域技術人員可以理解,對於惡意插件的處理與其類似。
[0058]與上述方法相對應,本發明還提供一種針對應用程式的廣告進行攔截的裝置。該裝置可以通過硬體、軟體或軟硬體結合方式實現。該裝置可以是指終端內部的功能模塊,也可以是指終端本身,只要終端包括實現該裝置的功能即可。該裝置包括:
[0059]監聽單元,用於通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化;
[0060]獲取單元,用於當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構;
[0061]控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件,若是,利用所述廣告插件對應的特徵數據對所述窗口進行定向攔截。
[0062]優選的,該裝置還包括:
[0063]數據源接口提取單元,用於採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接口;
[0064]網絡視圖數據獲取單元,用於通過所述數據源接口獲取到窗口所屬的類信息以及包結構;
[0065]網絡視圖控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於網絡視圖形式的廣告插件,若是,利用所述網絡視圖形式的廣告插件所對應的特徵數據對窗口進行定向攔截。
[0066]優選的,該裝置還包括:
[0067]點擊事件處理接口提取單元,用於採用反射機制從已經實例化的內置插件對象中動態提取展示的點擊事件處理接口;
[0068]圖像視圖數據獲取單元,用於通過所述點擊事件處理接口獲取到窗口所屬的類信息以及包結構;
[0069]圖像視圖控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於圖像視圖形式的廣告插件,若是,利用所述圖像視圖形式的廣告插件所對應的特徵數據對窗口進行定向攔截。
[0070]優選的,該裝置還包括:
[0071]插件精確判定單元,用於判斷所述窗口所屬的包結構與所述應用程式所使用的包結構是否完全分布在兩個互相平行且完全不重疊的包結構內,如果是,則進一步精確確定所述窗口為廣告插件。
[0072]優選的,所述控制單元具體用於:根據所述窗口所屬的類信息確定包名稱,並根據所述窗口所屬的包結構確定包路徑;根據所述包路徑中的多極目錄中每一級目錄的包名稱是否包含預先搜集的廣告廠商名稱、插件產品名稱來判定所述窗口是屬於某個廣告插件。
[0073]優選的,所述控制單元具體用於:預先在雲端先通過學習廣告插件樣本來提取到多款廣告插件的通用特徵數據;使用這些通用特徵數據來對所述應用程式進行掃描,從而判斷出所述應用程式裡包含哪些已知的廣告插件;對掃描確定的廣告插件進行攔截。
[0074]優選的,所述掃描的方式為針對應用二進位文件中的固定代碼和固定字符串進行比對。
[0075]優選的,所述窗口包括廣告條和/或懸浮窗。
[0076]在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基於在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定程式語言。應當明白,可以利用各種程式語言實現在此描述的本發明的內容,並且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。
[0077]在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,並未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0078]類似地,應當理解,為了精簡本公開並幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特徵有時被一起分組到單個實施例、圖、或者對其的描述中。然而,並不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特徵更多的特徵。更確切地說,如下面的權利要求書所反映的那樣,發明方面在於少於前面公開的單個實施例的所有特徵。因此,遵循【具體實施方式】的權利要求書由此明確地併入該【具體實施方式】,其中每個權利要求本身都作為本發明的單獨實施例。
[0079]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變並且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特徵和/或過程或者單元中的至少一些是相互排斥之外,可以採用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特徵以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特徵可以由提供相同、等同或相似目的的替代特徵來代替。
[0080]此外,本領域的技術人員能夠理解,儘管在此所述的一些實施例包括其它實施例中所包括的某些特徵而不是其它特徵,但是不同實施例的特徵的組合意味著處於本發明的範圍之內並且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0081 ] 本發明的各個部件實施例可以以硬體實現,或者以在一個或者多個處理器上運行的軟體模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數位訊號處理器(DSP)來實現根據本發明實施例的針對應用程式的廣告進行攔截的裝置中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用於執行這裡所描述的方法的一部分或者全部的設備或者裝置程序(例如,電腦程式和電腦程式產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從網際網路網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0082]應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,並且本領域技術人員在不脫離所附權利要求的範圍的情況下可設計出替換實施例。在權利要求中,不應將位於括號之間的任何參考符號構造成對權利要求的限制。單詞「包含」不排除存在未列在權利要求中的元件或步驟。位於元件之前的單詞「一」或「一個」不排除存在多個這樣的元件。本發明可以藉助於包括有若干不同元件的硬體以及藉助於適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬體項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
[0083]本發明提供以下方案:
[0084]Al、一種針對應用程式的廣告進行攔截的方法,包括:
[0085]通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化;
[0086]當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構;
[0087]根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件,若是,利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截。
[0088]A2、如Al所述的方法,還包括:
[0089]採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接口 ;
[0090]通過所述數據源接口獲取到窗口所屬的類信息以及包結構;
[0091]根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於網絡視圖形式的廣告插件或惡意插件,若是,利用所述網絡視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0092]A3、如Al所述的方法,還包括:
[0093]採用反射機制從已經實例化的內置插件對象中動態提取展示的點擊事件處理接Π ;
[0094]通過所述點擊事件處理接口獲取到窗口所屬的類信息以及包結構;
[0095]根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於圖像視圖形式的廣告插件或惡意插件,若是,利用所述圖像視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0096]A4、如Al所述的方法,還包括:
[0097]判斷所述窗口所屬的包結構與所述應用程式所使用的包結構是否完全分布在兩個互相平行且完全不重疊的包結構內,如果是,則進一步精確確定所述窗口為廣告插件或惡意插件。
[0098]A5、如Al所述的方法,所述根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件包括:
[0099]根據所述窗口所屬的類信息確定包名稱,並根據所述窗口所屬的包結構確定包路徑;
[0100]根據所述包路徑中的多極目錄中每一級目錄的包名稱是否包含預先搜集的廣告廠商名稱、插件產品名稱來判定所述窗口是屬於某個廣告插件或惡意插件。
[0101]A6、如Al所述的方法,所述定向攔截是根據特徵數據僅對廣告插件或惡意插件對應的窗口進行攔截,而對應用程式的其它窗口不作攔截的處理。
[0102]A7、如Al所述的方法,所述利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截包括:
[0103]預先在雲端先通過學習廣告插件樣本或惡意插件樣本來提取到多款廣告插件或惡意插件的通用特徵數據;
[0104]使用這些通用特徵數據來對所述應用程式進行掃描,從而判斷出所述應用程式裡包含哪些已知的廣告插件或惡意插件;
[0105]對掃描確定的廣告插件或惡意插件進行攔截。
[0106]AS、如A7所述的方法,所述掃描的方式為針對應用二進位文件中的固定代碼和固定字符串進行比對。
[0107]A9、如Al所述的方法,所述窗口包括廣告條和/或懸浮窗。
[0108]B10、一種針對應用程式的廣告進行攔截的裝置,包括:
[0109]監聽單元,用於通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化;
[0110]獲取單元,用於當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構;
[0111]控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件,若是,利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截。
[0112]B11、如BlO所述的裝置,還包括:
[0113]數據源接口提取單元,用於採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接口;
[0114]網絡視圖數據獲取單元,用於通過所述數據源接口獲取到窗口所屬的類信息以及包結構;
[0115]網絡視圖控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於網絡視圖形式的廣告插件或惡意插件,若是,利用所述網絡視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0116]B12、如BlO所述的裝置,還包括:
[0117]點擊事件處理接口提取單元,用於採用反射機制從已經實例化的內置插件對象中動態提取展示的點擊事件處理接口;
[0118]圖像視圖數據獲取單元,用於通過所述點擊事件處理接口獲取到窗口所屬的類信息以及包結構;
[0119]圖像視圖控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於圖像視圖形式的廣告插件或惡意插件,若是,利用所述圖像視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
[0120]B13、如BlO所述的裝置,還包括:
[0121]插件精確判定單元,用於判斷所述窗口所屬的包結構與所述應用程式所使用的包結構是否完全分布在兩個互相平行且完全不重疊的包結構內,如果是,則進一步精確確定所述窗口為廣告插件或惡意插件。
[0122]B14、如BlO所述的裝置,所述控制單元具體用於:根據所述窗口所屬的類信息確定包名稱,並根據所述窗口所屬的包結構確定包路徑;根據所述包路徑中的多極目錄中每一級目錄的包名稱是否包含預先搜集的廣告廠商名稱、插件產品名稱來判定所述窗口是屬於某個廣告插件或惡意插件。
[0123]B15、如BlO所述的裝置,所述控制單元用於根據特徵數據僅對廣告插件或惡意插件對應的窗口進行攔截,而對應用程式的其它窗口不作攔截的處理。
[0124]B16、如BlO所述的裝置,所述控制單元具體用於:預先在雲端先通過學習廣告插件樣本或惡意插件樣本來提取到多款廣告插件或惡意插件的通用特徵數據;使用這些通用特徵數據來對所述應用程式進行掃描,從而判斷出所述應用程式裡包含哪些已知的廣告插件或惡意插件;對掃描確定的廣告插件或惡意插件進行攔截。
[0125]B17、如B16所述的裝置,所述掃描的方式為針對應用二進位文件中的固定代碼和固定字符串進行比對。
[0126]B18、如BlO所述的裝置,所述窗口包括廣告條和/或懸浮窗。
【權利要求】
1.一種針對應用程式的廣告進行攔截的方法,其特徵在於,包括: 通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化; 當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構; 根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件,若是,利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截。
2.如權利要求1所述的方法,其特徵在於,還包括: 採用反射機制從已經實例化的內置插件對象中動態提取展示的數據源接口; 通過所述數據源接口獲取到窗口所屬的類信息以及包結構; 根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於網絡視圖形式的廣告插件或惡意插件,若是,利用所述網絡視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
3.如權利要求1所述的方法,其特徵在於,還包括: 採用反射機制從已經實例化的內置插件對象中動態提取展示的點擊事件處理接口; 通過所述點擊事件處理接口獲取到窗口所屬的類信息以及包結構; 根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於圖像視圖形式的廣告插件或惡意插件,若是,利用所述圖像視圖形式的廣告插件或惡意插件所對應的特徵數據對窗口進行定向攔截。
4.如權利要求1所述的方法,其特徵在於,還包括: 判斷所述窗口所屬的包結構與所述應用程式所使用的包結構是否完全分布在兩個互相平行且完全不重疊的包結構內,如果是,則進一步精確確定所述窗口為廣告插件或惡意插件。
5.如權利要求1所述的方法,其特徵在於,所述根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件包括: 根據所述窗口所屬的類信息確定包名稱,並根據所述窗口所屬的包結構確定包路徑;根據所述包路徑中的多極目錄中每一級目錄的包名稱是否包含預先搜集的廣告廠商名稱、插件產品名稱來判定所述窗口是屬於某個廣告插件或惡意插件。
6.如權利要求1所述的方法,其特徵在於,所述定向攔截是根據特徵數據僅對廣告插件或惡意插件對應的窗口進行攔截,而對應用程式的其它窗口不作攔截的處理。
7.如權利要求1所述的方法,其特徵在於,所述利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截包括: 預先在雲端先通過學習廣告插件樣本或惡意插件樣本來提取到多款廣告插件或惡意插件的通用特徵數據; 使用這些通用特徵數據來對所述應用程式進行掃描,從而判斷出所述應用程式裡包含哪些已知的廣告插件或惡意插件; 對掃描確定的廣告插件或惡意插件進行攔截。
8.如權利要求7所述的方法,其特徵在於,所述掃描的方式為針對應用二進位文件中的固定代碼和固定字符串進行比對。
9.如權利要求1所述的方法,其特徵在於,所述窗口包括廣告條和/或懸浮窗。
10.一種針對應用程式的廣告進行攔截的裝置,其特徵在於,包括: 監聽單元,用於通過應用程式的回調接口,動態監聽所述應用程式的窗口布局變化; 獲取單元,用於當監聽到新增窗口時,通過反射機制獲取該窗口所屬的類信息以及包結構; 控制單元,用於根據所述窗口所屬的類信息以及包結構判斷所述窗口是否屬於廣告插件或惡意插件,若是,利用所述廣告插件或惡意插件對應的特徵數據對所述窗口進行定向攔截。
【文檔編號】G06F17/30GK104199934SQ201410453765
【公開日】2014年12月10日 申請日期:2014年9月5日 優先權日:2014年9月5日
【發明者】劉昕, 唐淳 申請人:北京奇虎科技有限公司, 奇智軟體(北京)有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀