Вручную добавьте локальный файл в приложение Downloads
мое приложение должно загружать файлы, я искал DownloadManager, однако у него есть некоторые ограничения, которые не подходят для моего случая (аутентификация, схема именования, проверка), поэтому я сделал свой пользовательский механизм загрузки.
можно ли вручную добавить файл, загруженный с моим движком (таким образом, используя локальный URL-адрес) в список в системном приложении загрузки? Я понимаю, что список заполняется поставщиком системного контента. Можно ли добавлять к нему записи без DownloadManager пытается загрузить файл?
спасибо ;)
2 ответов
чтобы вручную добавить файл, необходимо использовать класс DownloadManager. Я использую следующее, чтобы показать файл в приложении загрузки, которое я создал локально.
DownloadManager downloadManager = (DownloadManager)mainActivity.getSystemService(mainActivity.DOWNLOAD_SERVICE);
downloadManager.addCompletedDownload(file.getName(), file.getName(), true, "application/json", file.getAbsolutePath(),file.length(),true);
это заставит файл появиться в приложении загрузки на 6.0, даже если файл был создан локально.
Котлин эквивалент вышеуказанного ответа:
val downloadManager = this.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
downloadManager.addCompletedDownload(file.getName(), file.getName(), true, "application/json", file.getAbsolutePath(),file.length(),true)