Android WebView广告过滤器

问题描述 投票:-1回答:2

我正在尝试使用基于webview的android java创建一个移动应用程序,这个应用程序只会显示我制作的网站的移动版本。该网站恰好有弹出窗口,我试图阻止他们在我的移动应用程序上。

这就是我现在所做的

public class URLIntercepter extends WebViewClient{

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url){
    if(url.contains("https://www.mywebsite.com/")){
        view.loadUrl(url);
        return true;
    }
    else
        return false;
}}
java android webview
2个回答
0
投票

在您的自定义WebViewClient中,您可以覆盖函数shouldInterceptRequest(WebView, WebResourceRequest)

来自Android docs

通知主机应用程序资源请求并允许应用程序返回数据。

因此,想法是查看请求是来自广告网址(大量黑名单过滤器),然后返回不是广告的“假”资源。

有关更长的解释和示例,我建议您查看此blog post


0
投票

由于您可以控制网站,因此您可以使用您的网址发送“GET”参数,例如mobile = 1,并且可以通过在服务器端使用以下代码来阻止弹出窗口或广告。我假设您使用的是PHP。

if(!isset($_GET["mobile"])){
    //show ads, popups etc.
}
© www.soinside.com 2019 - 2024. All rights reserved.