Manually add local file to the Downloads app

前端 未结 2 1844
有刺的猬
有刺的猬 2020-12-16 17:19

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), s

相关标签:
2条回答
  • 2020-12-16 17:51

    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.

    DownloadManager downloadManager = (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.

    0 讨论(0)
  • 2020-12-16 17:53

    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)
    
    0 讨论(0)
提交回复
热议问题