小编rad*_*dda的帖子

如果文件存在,为什么 ACTION_CREATE_DOCUMENT 意图无法正确重命名该文件?

嘿,

我在应用程序中使用 ACTION_CREATE_DOCUMENT 意图,让用户选择下载文件的路径。当文件名唯一时,它工作正常。

根据文档,如果文件名存在,系统不会覆盖原始文件,而是将数字附加到文件末尾。

我尝试了原始的android示例,首先,当没有其他同名文件时,文件被完美创建,并且我可以打开,但是当我想以同名保存文件时,认为系统附加数字,不是在扩展名之前,而是在扩展名之后,如下所示:fileName.jpg(1),之后我无法打开,直到那时我删除了这个附加的字符串。

我只尝试了运行 Android 10 的三星 Galaxy S20,这是一个特定问题,还是我出了什么问题?

如果我可以在保存之前检查文件名,也许这将是一个很好的解决方案,但文档树会创建文件。

我从文档中尝试了这段代码:

const val CREATE_FILE = 1

private fun createFile() {
    val intent = Intent(Intent.ACTION_CREATE_DOCUMENT).apply {
        addCategory(Intent.CATEGORY_OPENABLE)
        type = "application/pdf"
        putExtra(Intent.EXTRA_TITLE, "invoice.pdf")

    }
    startActivityForResult(intent, CREATE_FILE)
}
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助。

android kotlin

4
推荐指数
1
解决办法
2333
查看次数

标签 统计

android ×1

kotlin ×1