Android 仅当在同一站点上继续时才应重写
我使用webview在应用程序中显示我的网站,并且应该覆盖URL以保持其中的链接,但是,我只希望继续在我的网站上的链接覆盖其他链接,例如我希望从外部打开的facebook共享链接 请告诉我,只有当url=mysite.com时,我才应该重写EurlLoading,谢谢Android 仅当在同一站点上继续时才应重写,android,webview,adt,Android,Webview,Adt,我使用webview在应用程序中显示我的网站,并且应该覆盖URL以保持其中的链接,但是,我只希望继续在我的网站上的链接覆盖其他链接,例如我希望从外部打开的facebook共享链接 请告诉我,只有当url=mysite.com时,我才应该重写EurlLoading,谢谢 WebView view = (WebView) this.findViewById(R.id.webView1); view.getSettings().setJavaScriptEnabled(true);
WebView view = (WebView) this.findViewById(R.id.webView1);
view.getSettings().setJavaScriptEnabled(true);
view.loadUrl(url);
view.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
});
您应该解析
url
变量以检查url是否在您的域内
public boolean shouldOverrideUrlLoading(WebView view, String url) {
URI obj = new URI(url);
if (!"mysite.com".equals(obj.getHost()) {
return false;
}
view.loadUrl(url);
return true;
}
使用域主机更改mysite.com
(你也需要处理www.cases)请原谅我的经验不足,我是一个PHP的家伙,这是我第一次使用Android/Java。那应该去哪里?我尝试过的地方显示了Eclipse中的错误。Inside应该重写EurlLoading方法。编辑文章