5分钟教你做一个WebView广告过滤器

本文介绍如何创建一个WebView广告过滤器,通过分析网页加载过程,利用WebViewClient的shouldInterceptRequest函数拦截广告请求。在AdUrls.xml文件中存储要拦截的广告链接,并提供了一种本地存储广告库的方案,实现对广告的高效拦截,打造无广告浏览体验。
摘要由CSDN通过智能技术生成

先来看看效果
这里写图片描述
这站做的好,满满的广告,许多浏览器都有广告屏蔽功能,实现方式也各不相同,今天我们就来实战下怎么样把这些烦人的广告都干掉。


这里讲的是webview里面的广告,所以我们从网页来分析这个页面。
(1)广告的加载过程
这里写图片描述
通过这张图我们能发现网页加载过程是加载js,css,html,以及图片等等一些列的东西,每一个操作都是一个请求,同理,要想加载一个广告那么就必须请求广告。请求广告的链接我们可以通过chrome浏览器开发者模式来抓取。说了这么多还是没说到重点,那到底怎么才能屏蔽广告?【拦截广告的请求】不让广告的请求发出去,广告就获取不到数据了,然后。。。。。然后就没广告了。


(2)WebView拦截器
既然知道了广告的加载过程,接下来就是开始写代码了。webview的基本用法就不重复了,想必各位都会吧。我们先来熟悉下WebViewClient的几个回调函数:

public boolean shouldOverrideUrlLoading(WebView view, String url) 
// 在点击请求的是链接是才会调用,重写此方法返回true表明点击网页里面的链接还是在当前的webview里跳转,不跳到浏览器那边。
public void onReceivedSslError(WebView view, SslErrorHandler handler, android.
  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值