首页 > 解决方案 > Android存储访问框架删除问题

问题描述

我正在使用 SAF(存储访问框架)将视频文件写到 SD-CARD 上。我已经成功地创建了文件,阅读并移动了它们。但是我发现了删除文件的问题。

当我使用 SAF 删除文件时。文件不见了,但空间没有恢复。

例如:当 1 在 10GB 中剩余 2GB 时。我删除文件(总共 1GB)剩余空间是 2GB,而不是 3GB。

我用过:enter code here

val file: DocumentFile = DocumentFile.fromTreeUri(ctx, treeUri)
file?.delete()

甚至:

DocumentsContract.deleteDocument(
                            activity.contentResolver,
                            uri
                        )

甚至这个:

val path = "/storage/${external?.name}/root.img"
    val f = File(path)


    if (f.exists()) {
        val deleteCmd = "rm -r $path"
        val runtime = Runtime.getRuntime()
        try {
            runtime.exec(deleteCmd)
        } catch (e: IOException) {
            e.printStackTrace()
        }
    }
    app.applicationContext.deleteFile(f.name)
    f.absoluteFile.delete()
    f.exists()

标签: androidstorage-access-framework

解决方案


推荐阅读