如果我尝试在 Web 视图中加载 Facebook 个人资料,如果我使用
WebViewClient
将其显示在内部 Web 视图中而不是在外部浏览器上,则会收到错误:
webView=new WebView(ctx);
webView.loadUrl("https://www.facebook.com/Google");
webView.setWebViewClient(new WebViewClient());
它给出了这个错误:
它就像试图重定向到一个名为
fb://profile/
的内部协议,但它在内部 Web 视图中不起作用,因此,给出了 ERR_UNKNOWN_URL_SCHEME
对此有什么帮助吗?前段时间这工作得很好
您需要在 webview 客户端的
shouldOverrideUrlLoading
中进行额外的检查。
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
String host = Uri.parse(url).getHost();
if (!TextUtils.isEmpty(host) && url.startsWith("fb://")) {
return true;
}
}
这将加载您的fb://page/xxx