微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何查看下载是否成功 downloadmanager

如何解决如何查看下载是否成功 downloadmanager

我们可以捕捉到,当下载完成时,通过使用具有意图的接收者操作 DownloadManager.ACTION_DOWNLOAD_COMPLETE。但是如何检查,此下载是否成功,如果没有,是否部分完成或此 url 上的文件不存在。如果文件不存在,是互联网连接问题还是其他原因?如果下载由于某种原因暂停,如何继续,以及我的接收者的方法是否会在恢复后下载完成时再次调用?因为如果下载不成功,我的应用程序就会崩溃,这对我来说并不奇怪。非常感谢大家的帮助。

//part of my activity class
class ActivityDetails : AppCompatActivity() {
    private var loadId: Long = -1
    private lateinit var dM: DownloadManager
    private val loadReciever: broadcastReceiver = object : broadcastReceiver() {
        override fun onReceive(context: Context?,intent: Intent) {
            if (intent.action.equals(DownloadManager.ACTION_DOWNLOAD_COMPLETE)) {
                val id: Long = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID,-1)
                if (id == loadId) {
                        intent.action = Intent.ACTION_SEND
                            intent.type = dM.getMimeTypeForDownloadedFile(id)
                        intent.flags = Intent.FLAG_GRANT_READ_URI_PERMISSION
                        intent.putExtra(Intent.EXTRA_SUBJECT,"sharing")
                        intent.putExtra(Intent.EXTRA_STREAM,dM.getUriForDownloadedFile(id))
                        intent.putExtra(Intent.EXTRA_TEXT,"Test")
                        intent.setPackage(null)
                        loadId = -1
                        startActivity(intent)
}
}
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。