首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android file.exists()和file.isFile不工作

Android file.exists()和file.isFile不工作
EN

Stack Overflow用户
提问于 2021-11-16 11:36:40
回答 1查看 84关注 0票数 0

我尝试用以下代码下载一个文件到下载文件夹:

代码语言:javascript
复制
private fun downloadTrack(track: Track) {
        val url = track.file
        val request = DownloadManager.Request(Uri.parse(url))
        request.setDescription("Downloading track ${track.trackName}...")
        request.setTitle(track.trackName)
        request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED)

        request.setDestinationInExternalPublicDir(
            Environment.DIRECTORY_DOWNLOADS,
            track.trackName + ".mp3"
        )

        val manager = getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager

        val downloadId: Long = manager.enqueue(request)
        registerBroadcast(downloadId)
    }

在下面的登录中下载了它之后,我试图检查它是否已经存在于以下代码中:

代码语言:javascript
复制
    private fun getTrack(track: Track) {
        val file =
            File(
                Environment.DIRECTORY_DOWNLOADS,
                track.trackName + ".mp3"
            )

        try {
            if (file.isFile) {
                Toast.makeText(this, "FILE EXISTS", Toast.LENGTH_SHORT).show()
            } else {
                Toast.makeText(this, "FILE NOT FOUND", Toast.LENGTH_SHORT).show()
                downloadTrack(track)
            }
        } catch (e: Exception) {
            e.printStackTrace()
        }
    }

还尝试了file.exists()并使用目录。没有任何帮助,文件被下载后就找不到了,尽管我在同一个目录中寻找它。请帮帮忙。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-16 12:13:14

Environment.DIRECTORY_DOWNLOADS

这还不够。

你需要:

代码语言:javascript
复制
getExternalStoragePublicDirectory( Environment.DIRECTORY_DOWNLOADS)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69988441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档