我想在 webview 中添加新闻和天气应用程序。但是从 webview 跳转到任何其他网站都不是一种选择。如何限制某个网站的 webview。
谢谢。
创建自己的 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());
编辑注: getHost() 函数的示例
如果我正确理解了这个问题,您可能想要实现自己的WebViewClient。这将允许您处理页面导航。查看来自 Google 的教程链接。
viewer.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//Block all URL accesses.
return false;
}
});
这应该阻止访问任何东西。如果你想允许它们,你需要在这个函数中处理特定的 URL。