Skip to content Skip to sidebar Skip to footer

Manually Add Local File To The Downloads App

My app needs to download files, I was looking into DownloadManager, however it has some limitations that don't suit my case (authentication, naming scheme, verification), so I made

Solution 1:

To manually add a file you need to use the DownloadManager class. I use the following to show a file in the Download app that I created locally.

DownloadManagerdownloadManager= (DownloadManager)mainActivity.getSystemService(mainActivity.DOWNLOAD_SERVICE);
downloadManager.addCompletedDownload(file.getName(), file.getName(), true, "application/json", file.getAbsolutePath(),file.length(),true);

This will make the file appear in the Downloads app on 6.0, even if the file was created locally.

Solution 2:

Kotlin Equivalent of the above answer:

val downloadManager =   this.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
downloadManager.addCompletedDownload(file.getName(), file.getName(), true, "application/json", file.getAbsolutePath(),file.length(),true)

Post a Comment for "Manually Add Local File To The Downloads App"