android - DownloadManager 下载 2 个文件而不是 1 个
问题描述
我想使用 DownloadManager 从editText 中的 url 下载文件。但是当我点击下载按钮时,它会在下载目录中创建两个名为 view.filename.text.toString() 的文件,并在下载文件夹的 TTT 目录中创建另一个文件 view.filename.text.toString() + "AFK"姓名。
view.downloadBTN.setOnClickListener { _ ->
downloadManager = activity?.getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
request = DownloadManager.Request(Uri.parse(view.uriEDT.text.toString()))
Log.d("URI", Uri.parse(view.uriEDT.text.toString()).toString())
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_MOBILE or DownloadManager.Request.NETWORK_WIFI)
request.setAllowedOverRoaming(false)
request.setTitle(view.filename.text.toString())
request.setDescription("No Description")
request.setVisibleInDownloadsUi(true)
Log.d("PATH", Environment.getExternalStoragePublicDirectory(
DIRECTORY_DOWNLOADS).toString() )
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS + "/TTT/", view.filename.text.toString() + "AFK")
val refID = downloadManager.enqueue(request)
//cxt.registerReceiver(onComplete, IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE))
//list.add(refID)
}
解决方案
我认为这是一个通用错误,我想它还没有修复。也许您可以为此功能使用开源库。Github 上有很多成功的库。
或者您可以查看下面的链接,这可能是一种解决方法。
推荐阅读
- c++ - 错误:没有用于调用“变量”的匹配函数
- c# - 如何在 C#/Vb.net 中将数组字节写入 PDF/A-3 和附件 [关闭]
- excel-formula - 使用单元格填写 SUMPRODUCT 公式的文件路径?
- java - 尝试通过 ResourceLink 访问 Tomcat 数据源正在返回 ResourceRefLink
- sql - 创建一个具有 NULL 值/0 的数组并查找不包括 null/0 的数组长度
- twilio - Chrome 71 AudioContext 使用 Twilio 客户端恢复
- arrays - ColdFusion 处理数据表“发送参数”
- javascript - 调用方法作为图像源时的 ExpressionChangedAfterItHasBeenCheckedError
- flutter - 如何制作选框颤动图像小部件
- html - 使用线性渐变再现 SVG 渐变等价于 CSS 渐变