Android上使用DocumentsProvider API进行的一些文件操作

时间:2015-07-10 20:06:04

标签: android mime

自Android 5.0以来,DocumentsProvider API是管理可移动存储上文件的唯一官方方式。但是,似乎它甚至不支持基本功能。或者,也许,我错过了什么?

  1. 使用非标准扩展名创建新文档(文件) DocumentsContract.createDocument(contentResolver, uri, mimeType, name)
    根据mimeType附加扩展名。例如,它会为{text / plain'添加.txt。 MIME类型。问题是:我可以创建名为file.abc的文件吗?如果不是,我可以注册一个新的MIME类型,该类型将链接到abc扩展名吗?

  2. 移动文件 DocumentsContract.renameDocument(contentResolver, uri, newName)
    可以重命名文档。但是我可以将文档移动到另一个目录(更改文档的父目录)吗?我必须创建一个新文档,从旧文档中复制内容,并删除旧文档吗?

  3. 设置文档的修改日期 在某些情况下,此操作可能很有用。例如,在我必须模拟问题2的文件系统move操作的情况下。有没有办法为文档设置任何所需的修改时间?

1 个答案:

答案 0 :(得分:1)

  1. 是的,您可以,但这也取决于设备制造商如何实施DocumentProvider。

  2. 您只能重命名,其父级无法移动。你是关于创建一个新文档的。

  3. 不,在Android 6.0之前不允许设置上次修改日期。也许将来。