2

Java Androidの ajava.util.Fileと aの正確な違いは何ですか?android.support.v4.provider.DocumentFile

4

1 に答える 1

7

要するに:

Fileは、Android に触れたことがない場合でも通常は知っている「通常の」Java ファイルです。つまり、基盤となる OS のファイル/ディレクトリにアクセスするための抽象化です。

DocumentFileは、Android の Storage Access Framework (SAF) でこれをさらに抽象化するために導入されました。これは、「通常の」ファイルまたは DocumentProvider と呼ばれる別の抽象化によってサポートされています https://developer.android.com/guide/topics/providers/document-provider .htmlであり、より一般的な方法で両方のタイプのファイルにアクセスするために使用できます。これは、基盤となる OS ファイル/ディレクトリ構造を「隠す」ための Google の継続的な取り組みの一環です。

1 つのアプローチは、File (ディスク/カード ファイルにアクセスする場合) または DocumentFile (ContentProvider からバックアップされたファイルにアクセスする場合) の両方を使用することですが、より「モダンな」方法は、常に DocumentFile を使用することです。fromFile(File)

于 2016-10-31T13:51:28.517 に答える