2

Java Android 中的 ajava.util.File和 a到底有什么区别?android.support.v4.provider.DocumentFile

4

1 回答 1

7

简而言之:

文件是即使他从未接触过 Android 也通常会知道的“普通”Java 文件——即用于访问底层操作系统文件/目录的抽象。

引入DocumentFile是为了在 Android 的存储访问框架 (SAF) 中进一步抽象这一点 - 它由“普通”文件或另一个名为 DocumentProvider https://developer.android.com/guide/topics/providers/document-provider的抽象支持.html并且可以用于以更通用的方式访问这两种类型的文件。这是谷歌“隐藏”底层操作系统文件/目录结构的持续努力的一部分。

一种方法是同时使用 File(访问磁盘/卡文件时)或 DocumentFile(访问从 ContentProvider 支持的文件时),但更“现代”的方法是始终使用 DocumentFile,它可以通过使用来表示普通文件fromFile(File)

于 2016-10-31T13:51:28.517 回答