Установка тела запроса в DownloadManager Android?

Для следующего шага моего приложения мне нужно добавить функциональность загрузки. Пользователь выбирает то, что они хотят загрузить, и может выбрать что-либо из одного файла в тысячи из них, если они могут быть обеспокоены тем, чтобы выбрать их.

Я хочу использовать встроенный в DownloadManager Android для обеспечения этой функции загрузки, но, к сожалению, я не вижу, как я мог бы реализовать ее для своего сценария.

Чтобы целевой сервер разрешил загрузку, мне нужно отправить JSON в тело запроса. Например, если бы я делал это вручную:

  DataOutputStream output = новый DataOutputStream (connection.getOutputStream ());
 output.writeBytes (RAWDATA);
 output.flush (); 

Где rawData – строка JSON. Тело запроса всегда установлено в POST .

Кажется, я не могу найти способ добавить эту строку JSON в DownloadManager, и пока я не смогу это сделать, сервер всегда будет отклонять загрузку.

Единственное другое решение, о котором я хочу думать, которое я отчаянно хочу избежать, заключается в написании PHP-скрипта на моем сервере, чтобы выполнить некоторые параметры GET , сгенерировать JSON и затем перенаправить запрос.

Кто-нибудь знает, как я могу отправлять данные JSON вместе с DownloadManager? Каждому файлу, который я загружаю, нужна его уникальная строка JSON.