在webView中除去广告
首先建一个ADFilterTool.java类
代码如下
import android.content.Context;
import android.content.res.Resources; public class ADFilterTool {
public static boolean hasAd(Context context, String url) {
Resources res = context.getResources();
String[] adUrls = res.getStringArray(R.array.adBlockUrl);
for (String adUrl : adUrls) {
if (url.contains(adUrl)) {
return true;
}
}
return false;
} }
然后建立一个资源文件AdUrlString.xml,添加需要去除的广告(如果是图片广告把加载图片的网址加进去)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="adBlockUrl">
<item>需要过滤的网址</item>
</string-array>
</resources>
在给webview中添加监听器
wv.setWebViewClient(new WebViewClient() {
//网络请求部分
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, String url) {
url = url.toLowerCase();
Log.i("TAG", url);
if (!url.contains("你的域名")) {
if (!ADFilterTool.hasAd(MainActivity.this, url)) {
return super.shouldInterceptRequest(view, url);
} else {
return new WebResourceResponse(null, null, null);
}
} else {
return super.shouldInterceptRequest(view, url);
}
} }
);
在webView中除去广告的更多相关文章
- 从浏览器或者Webview 中唤醒APP
本文来自网易云社区 作者:刘新奇 移动互联时代,很多互联网服务都会同时具备网站以及移动客户端,很多人认为APP的能帮助建立更稳固的用户关系,于是经常会接到各种从浏览器.webview中唤醒APP的需求 ...
- 重新想象 Windows 8.1 Store Apps (81) - 控件增强: WebView 之加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Contract 分享 WebView 中的内容, 为 WebView 截图
[源码下载] 重新想象 Windows 8.1 Store Apps (81) - 控件增强: WebView 之加载本地 html, 智能替换 html 中的 url 引用, 通过 Share Co ...
- 混合开发 webview 中file 控件 点击后无反应解决方法
最近在做个项目 ,需要 使用 file 控件上传 图片到服务器 ,在手机浏览器中 可以正常选择照片,但是放到 android 应用中的webview中,file 控件点击后就没有反应. 百度了一番后, ...
- iOS之在webView中引入本地html,image,js,css文件的方法 - sky//////////////////////////////////////ZZZZZZZZZZZZZZZ
iOS之在webView中引入本地html,image,js,css文件的方法 2014-12-08 20:00:16CSDN-sky_2016-点击数:10292 项目需求 最近开发的项 ...
- Android安全开发之WebView中的地雷
Android安全开发之WebView中的地雷 0X01 About WebView 在Android开发中,经常会使用WebView来实现WEB页面的展示,在Activiry中启动自己的浏览器,或者 ...
- 用Okhttp框架登录之后的Cookie设置到webView中(转)
1.webview中设置: [java] view plain copy @SuppressWarnings("deprecation") public void synCooki ...
- webview中的页面兼容iphone6和6+
其实写这篇文章的本不该是我,而应该是开发ios的小伙伴,但作为一个前端,我想我还是有必要做一下记录的! 首先我想说下在iphone6或者6+中webview内嵌套的页面宽度已经不在是320px,而是3 ...
- 在Android的webview中定做js的alert,confirm和prompt对话框的方法
在Android的webview中定制js的alert,confirm和prompt对话框的方法 http://618119.com/archives/2010/12/20/199.html 1.首先 ...
- Android WebView中的JavaScript代码使用
在WebView中使用JavaScript 如果你想要载入的页面中用了JavaScript,你必须为你的WebView使能JavaScript. 一旦使能之后,你也可以自己创建接口在你的应用和Java ...
随机推荐
- C# 动态类型 以及 脚本调用(scriptRunTime)
在使用中让我感觉 好像 JavaScript中的 动态类型囧 先看动态类型 class Program { static void Main(string[] args) { var streamRe ...
- 画风清奇!看看大佬怎么玩Python
一提到Python,不少人脑海里都会浮现出几个关键词"数据分析""网络爬虫""人工智能"等,但Python的用法,远不止这些.让我们看看国内 ...
- 吴裕雄--天生自然Numpy库学习笔记:NumPy 从数值范围创建数组
import numpy as np x = np.arange(5) print (x) import numpy as np # 设置了 dtype x = np.arange(5, dtype ...
- Codeforces Round #618 (Div. 2)A. Non-zero
Guy-Manuel and Thomas have an array aa of nn integers [a1,a2,…,an ]. In one step they can add 11 to ...
- docker+hexo 搭建博客
前提 Linux服务器 保证自己服务器上的端口对外开放,即设置相应的防火墙规则 安装好hexo 安装:npm install hexo-cli -g 初始化搭建:npm init myBlog,myB ...
- 2016-2017学年第三次测试赛 习题E 林喵喵算术
时间限制: 1 Sec 内存限制: 128 MB 提交: 70 解决: 25 提交统计讨论版 题目描述 给你两个八进制数,你需要在八进制计数法的情况下计算a-b. 如果结果为负数,你应该使用负号代 ...
- kaggle赛题Digit Recognizer:利用TensorFlow搭建神经网络(附上K邻近算法模型预测)
一.前言 kaggle上有传统的手写数字识别mnist的赛题,通过分类算法,将图片数据进行识别.mnist数据集里面,包含了42000张手写数字0到9的图片,每张图片为28*28=784的像素,所以整 ...
- 全排列next_permutation()用法和构造函数赋值
全排列next_permutation()用法 在头文件aglorithm里 就是1~n数组的现在的字典序到最大的字典序的依次增加.(最多可以是n!种情况) int a[n]; do{ }while( ...
- MySQL复制方法
MySQL的二进制日志,MySQL复制原理,MySQL主从模式搭建,MySQL双主模式搭建,MySQL级联模式搭建,MySQL半同步模式复制 一.二进制日志 1.概念 MySQL的二进制日志(bina ...
- centos610无桌面安装openoffice
Centos610系列配置卸载yum remove libreoffice*yum remove openoffice* 安装yum install openoffice.org-writer yu ...