java - 捕获服务器响应

标签 java android visual-studio c#-4.0 xamarin.android

我正在使用 Webview 在我的项目中实现浏览器功能。假设有人在 google 中搜索 download.com,搜索软件(在 download.com 中),然后单击下载链接。将向服务器发出请求,服务器将返回相应的下载文件。现在有什么方法可以捕获服务器响应,以便我可以将其发送到其他应用程序(比如说下载管理器)?请注意,我不知道用户何时会点击下载链接。

提前致谢。

最佳答案

WebView 公开 Download当要下载某些内容时,您可以 Hook 以捕获的事件:

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);

关于java - 捕获服务器响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9986552/

相关文章:

java - Java中的静态嵌套类,为什么?

java - 尝试在空对象引用上调用虚拟方法 'void android.view.View.measure(int, int)'

sql-server - 如何从现有服务器更新 SSAS Visual Studio 项目?

python - Tensorflow Visual Studio 导入错误

c++ - 如何在 Visual Studio 中显示命令参数?

java - @Autowired 不注入(inject) Spring Data JPA 存储库 - NullPointerException

java - 如何在Android中获取多个通知

java - Java 命令提示符中的按键绑定(bind)?

java - GridView OnItemClickListener 没有调用 onItemClick

java - SSL 套接字 : no cipher suites in common error