我正在使用Webview在我的项目中实现浏览器功能。让我们说有人在谷歌搜索download.com,搜索软件(在download.com中),然后点击下载链接。将向服务器发出请求,该服务器将使用相应的下载文件进行响应。现在有什么方法可以捕获服务器响应,以便我可以将它发送到其他应用程序(比如说,下载管理器)?请注意,我不知道用户何时会点击下载链接。
提前致谢。
答案 0 :(得分:0)
WebView公开了一个Download事件,您可以挂钩以捕获要下载的内容:
webView.Download += (sender, args) =>
{
Console.WriteLine(args.Url);
};
或者,您可以创建自己的IDownloadListener实现:
public class MyDownloadListener : Java.Lang.Object, IDownloadListener
{
public void OnDownloadStart(string url, string userAgent, string contentDisposition, string mimetype, long contentLength)
{
Console.WriteLine(url);
}
}
并将其提供给WebView:
var listener = new MyDownloadListener();
webView.SetDownloadListener(listener);