【问题标题】:Android WebView navigationAndroid WebView 导航
【发布时间】:2012-06-26 19:09:08
【问题描述】:

我想在 webview 中添加新闻和天气应用。但是从 webview 跳转到任何其他网站都不是一种选择。如何限制某个网站的 webview。

谢谢。

【问题讨论】:

  • 我不明白你的问题
  • 好的。让我试着解释一下。如果我将 www.weather.com 放在 webview 中,并且用户点击了一些广告或尝试通过 facebook 或 twitter 分享一些东西。我不应该允许。基本网址始终必须是 www.weather.com。用户可以浏览该网址中的任何内容。这有帮助吗?

标签: android


【解决方案1】:

创建自己的 WebViewClient:

public class CustomWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        if(url.getHost().equals("weather.com")){
            // load link
            return false;
        }else{
            // block link
            return true;
        }
    }
}

像这样使用它:

webview.setWebViewClient(new CustomWebViewClient());

编辑注意: an example of a getHost() function

【讨论】:

    【解决方案2】:
    viewer.setWebViewClient(new WebViewClient(){
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
    
            //Block all URL accesses.
            return false;
        }
    });
    

    这应该会阻止访问任何内容。如果你想允许它们,你需要在这个函数中处理特定的 URL。

    【讨论】:

      【解决方案3】:

      如果我正确理解了这个问题,您可能想要实现自己的WebViewClient。这将允许您处理页面导航。查看 the link 获取来自 Google 的教程。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-03-15
        • 1970-01-01
        • 2011-10-24
        • 2017-03-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多