ловить ответ сервера - PullRequest
1 голос
/ 03 апреля 2012

Я использую Webview для реализации возможностей браузера в моем проекте. Допустим, кто-то ищет download.com в google, ищет программное обеспечение (в download.com), а затем нажимает на ссылку для скачивания. На сервер будет отправлен запрос, который ответит соответствующим файлом загрузки. Теперь можно ли как-нибудь перехватить ответ сервера, чтобы я мог отправить его в другое приложение (скажем, в менеджер загрузок)? Обратите внимание, что я не знаю, когда пользователь нажмет на ссылку для скачивания.

Заранее спасибо.

1 Ответ

0 голосов
/ 03 апреля 2012

WebView предоставляет событие Загрузка , к которому вы можете подключиться, когда нужно что-то загрузить:

webView.Download += (sender, args) =>
                    {
                        Console.WriteLine(args.Url);
                    };

В качестве альтернативы, вы можете создать собственную реализацию * 1006.* 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);
...