0

我正在开发文件管理器,我在 android 版本 30 中有一个问题,当我得到 OTG 路径的 listFile() 它不返回文件时,获取所有文件的唯一方法是从 DocumentFile,但现在我想从文件中获取文件那 DocumentFile 我怎么得到,请支持我。

4

2 回答 2

0

在 getExternalFilesDirs() 中通常不再提及 USB OTG 驱动器。

所以你没有路径。

只有使用 SAF ACTION_GET_DOCUMENT_TREE,您才能获得驱动器或驱动器上文件夹的 uri。

现在将这样的 uri 转换为飞行系统路径非常容易。(查看各种 getRealFileForUri() 实现)。

但是,即使您设法获得了一条路径,它也无法使用。

于 2021-11-18T07:40:57.673 回答
0

你没有。不能保证在任何地方都有一个实际的文件,它可以由内容提供者在运行时计算它,或者从数据库中读取它来支持。由于 File 只能表示磁盘上的文件,因此无法将 DocumentFile 转换为 File。

于 2021-11-18T06:46:55.977 回答