在使用ShouldOverrideUrlLoading从Xamarin.Forms Android WebView中检索标题时遇到问题,始终返回空的情况下,可能是由于以下原因导致的:
针对这个问题,可以尝试以下解决方法:
webView.SetWebViewClient(new WebViewClient());
webView.SetWebChromeClient(new WebChromeClient());
webView.SetWebViewClient(new WebViewClient()
{
public override void OnPageFinished(WebView view, string url)
{
string pageTitle = view.Title;
// 这里可以处理获取到的标题
}
});
首先,在WebView中启用JavaScript:
webView.Settings.JavaScriptEnabled = true;
然后,通过EvaluateJavascript方法执行JavaScript脚本获取标题:
webView.EvaluateJavascript("document.title", new JavaScriptValueCallback((result) =>
{
string pageTitle = result; // 获取到的标题
// 这里可以处理获取到的标题
}));
需要注意的是,在Android 4.4以下的版本上,EvaluateJavascript方法可能无法正常工作,可以使用LoadUrl方法执行JavaScript脚本,并通过AddJavascriptInterface方法与C#代码进行交互。
推荐的腾讯云相关产品:腾讯云移动浏览器服务(Tencent Mini Program Browser Service)
产品介绍链接地址:https://cloud.tencent.com/product/mbbs
领取专属 10元无门槛券
手把手带您无忧上云