Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 仅当在同一站点上继续时才应重写_Android_Webview_Adt - Fatal编程技术网

Android 仅当在同一站点上继续时才应重写

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在应用程序中显示我的网站,并且应该覆盖URL以保持其中的链接,但是,我只希望继续在我的网站上的链接覆盖其他链接,例如我希望从外部打开的facebook共享链接

请告诉我,只有当url=mysite.com时,我才应该重写EurlLoading,谢谢

    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方法。编辑文章