В моем приложении для Android я должен загружать файлы с URL-адресов. Я использую Android DownloadManager
, но URL-адреса доступны только через DefaultHttpClient
. Фактически, эти URL являются результатом нескольких POST
запросов. Я имею в виду: мне разрешено загружать файлы, только если я вошел как пользователь. Может ли кто-нибудь помочь мне справиться с этой ситуацией? Я думаю, что невозможно использовать DM для загрузки файлов, поставив непосредственно ссылку на запрашиваемый ресурс. Когда мне нужно загрузить файл, там уже активен DefaultHttpClient
, и я вошел в систему.
Я использую следующий код:
dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
Request request = new Request(Uri.parse(client.HttpsGet(url));
enqueue = dm.enqueue(request);
HttpsGet - это метод моего пользовательского класса HttpsClient, который выполняет HTTP GET. В этом случае я получаю файл, закодированный в текст (например, если я открываю PDF с помощью блокнота). Если я напрямую укажу URL файла (без вызова HttsGet), устройства загрузят пустой файл.