是否有嘗試阻止應用程序中廣告的方法?從理論上講,似乎應該可以通過例如阻止對某些站點的Web請求來實現。
是否有嘗試阻止應用程序中廣告的方法?從理論上講,似乎應該可以通過例如阻止對某些站點的Web請求來實現。
最流行的方法是用一種替換內置的主機文件,該文件強制DNS到知名廣告服務器的查詢產生127.0.0.1(localhost)。這樣可以有效地阻止大多數常見廣告以及應用程序中的大多數Google Ads。
缺點是應用程序可以告知廣告已被阻止,並且可以在廣告投放期間拒絕投放或以其他方式降低其實用性
阻止有效。
此外,需要root訪問權限才能替換hosts文件。
除此之外,我還沒有發現任何可以選擇性阻止任意應用程序Web請求的內容。對於某些僅使用互聯網訪問廣告的程序,您可以使用防火牆應用程序阻止它們訪問互聯網,或者-如果您的ROM支持(例如最新的CyanogenMod),則可以從該應用程序撤消互聯網訪問權限。 / p>
同樣,通常需要root用戶訪問權限才能設置系統級應用級防火牆或替換ROM。
從理論上講,在所有應用程序中,都有兩種不同的應用程序 AdFree Android和 AdAway阻止廣告。要使用這些電話,您必須擁有根電話。
AdFree Android的工作方式是
...在系統主機文件中取消對已知主機名的請求。
本質上是一種自動修改主機文件的解決方案,由另一個用戶在此處提出。看來Adaway也是一樣。
如果您沒有手機,您至少可以將 Firefox瀏覽器與Adblock Plus插件一起使用(通過Firefox安裝)。
您還可以使用防火牆或權限限制應用程序(例如DroidWall或LBE Privacy Guard)來限制特定應用程序的Internet訪問。這些也需要root。
要禁用廣告,您必須了解廣告的真正來源。有易於識別的廣告服務器,可以通過編輯主機文件輕鬆地避免這些服務器(您可以通過ES文件管理器,或者來自本地或筆記本電腦/台式機的終端會話。)
但是,當廣告服務器持續擁有隨機子域時,繼續追逐那些更新的服務器可能是一件很麻煩的事。有一些應用程序(以前提到過)可以幫助簡化該任務-但仍然是與廣告打廣告然後阻止新服務器的相同解決方案。如果ip地址被硬編碼,則這些方法都不會起作用。
另一種選擇是啟用防火牆,以拒絕特定應用程序的任何流量。這意味著:更新,廣告,推送統計信息等...不使用數據計劃而且不要佔用您的電話。移動安全(在市場或Play上免費)可讓您在需要時進行精細控制。我在台式機和服務器上使用過Avast,並在根目錄Gingerbread和CyanogenMod9(ICS)上運行了它。非常好的應用。
除了基於DNS / IP地址的廣告攔截器外,我還建議 MinMinGuard (需要有根電話和Xposed框架)。它具有基於API的阻止功能,可阻止廣告網絡SDK提供的功能調用。
MinMinGuard是使用Xposed Framework for Android製作的廣告刪除程序。 MinMinGuard可以完全刪除應用內的廣告以及由這些廣告引起的空白區域。傳統的移除廣告的應用只能阻止廣告內容,但廣告所佔用的空間仍保持未使用狀態(黑色)。 MinMinGuard成功刪除了該黑色空間,這擴大了應用程序窗口,並改善了用戶體驗!
功能:
- 完全刪除廣告。您會注意到,AdBlock和AdAway僅停止顯示廣告內容,但不能刪除廣告最初採用的空白字段。 MinMinGuard可以完全刪除空白字段!
- 輕巧。替代廣告刪除應用程序(AdBlock等)不斷運行後台VPN服務,這給系統帶來了沉重的負擔。 MinMinGuard不需要運行VPN服務,因此可以節省系統資源,從而延長電池壽命。
- 每個應用設置。使用MinMinGuard,您可以選擇要從中刪除廣告的應用。如果您只想從多個應用中刪除廣告,那麼MinMinGuard是您最好的解決方案。
Adblock Plus現在可用於Android。
以下是 Lifehacker的評論中的摘錄:
如果您喜歡台式機上的Adblock Plus,現在就可以在Android手機上隨身攜帶它了。適用於Android的Adblock Plus在您瀏覽時甚至會阻止網站上的廣告,甚至在支持廣告的應用程序中隱藏廣告。最棒的是,它是完全免費的。
適用於Android的Adblock Plus不需要root訪問手機即可抑制廣告,但是如果您的設備是root用戶,則效果最好。如果您紮根,它將抑制3G / 4G和Wi-Fi上的廣告,而無需其他配置。如果您不紮根,並且正在運行Ice Cream Sandwich,它將阻止通過Wi-Fi而非3G / 4G的廣告。如果您的設備運行的是Gingerbread或更早的版本,則必須手動設置Adblock的代理才能使其正常運行。說到代理,這就是Android版Adblock Plus設法剝離所有這些廣告的方式:它通過您的服務器路由所有流量,並在廣告到達手機之前將其刪除。
雖然不完整,但我有一個適合我的解決方案。我已經在局域網中配置了dnsmasq dns服務器,以0.0.0.0作為對一組指定廣告主機名的響應。
優點是我有一個解決方案可以同時為平板電腦和手機解決此問題,而無需同時使用它們中的任何一個。缺點是只能在無線網絡上在家工作。
我喜歡防火牆方法。最近安裝了 NoRoot防火牆,並通過反複試驗發現,如果我阻止訪問l [ab] -in-f [0-9] {3} \。1e100 \ .net(實際上,應用不支持地址正則表達式),廣告無法通過。
我之前遇到過類似的問題,並且現有的應用程序都無法解決我的問題,此外,我無法根據我的公司電話制定適當的政策。然後,我意識到您可以為每個連接(wifi和4g)分別配置代理。因此,我安裝了一個魷魚,配置為阻止大多數煩人的廣告網站,並部署在docker中。長話短說:
docker run -d -p 3128:3128 --name squid-adblock andrassebo / squid-adblock
然後在上配置代理您的手機使用主機IP地址和3128作為端口。
最新的Android電子市場應用程序(我有3.15,這是我第一次注意到該選項)具有允許您阻止Google或AdMob廣告跟踪您並對其進行個性化設置的選項符合您的利益。如果您想停止所有操作,那就只需要打勾就可以了。您應該看到的位置:
Google AdMob Ads :根據我的興趣個性化廣告
選擇是否個性化Google和AdMob在移動應用中的廣告在此設備上。 了解詳情
只需從該複選框中刪除勾號即可:
退出
如果您選擇退出,則您的設備標識符信息將不會被Google用作未來的廣告,也不會收到基於您的興趣或推斷的受眾特徵的廣告。
答案是:理論上是,實際上是否。自提出該問題以來已有好幾年了,但廣告軟件變得更糟。這很難實現,因為這將需要擺脫與當前世界的經濟模式和企業家精神有關的廣告軟件根源。這就像讓世界各地的人們重新生活一樣,對廣告做出非常大膽的回應:“要么沒有廣告,要么不使用android os / devices”。這可以通過對孩子的教育,通過播種強大的想法來實現,例如“廣告是一種類似於色情/盜竊/欺騙和投機/恐怖主義/麻醉品的犯罪行為”。 ...最終將挨餓,因為任何“與廣告有關的活動”都將指被認為是“從事非法活動”的組織,因此應繳納巨額罰款,發布廣告的人將被判入獄。 >
還有另一種更快的方法:創建一個小組,該小組將開發與android基本相同的android替代固件,但使用許可條款明確禁止使用廣告,甚至可能禁止嵌入某些禁止/防火牆引擎進入系統並易於用戶調整。良好的實施將非常昂貴,並且將其投入到非常單一的電話中需要花費時間。
這是一些有效的方法,但是任何真正的行動都應該涉及Google,Google應該“改變主意,變得白皙蓬鬆”,以便真正擺脫android中的adware。使用當前的世界經濟模型,這是極不可能實現的。