首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对子目录DocumentFile对象的Uri调用DocumentFile.fromTreeUri()时出现意外行为

对子目录DocumentFile对象的Uri调用DocumentFile.fromTreeUri()时出现意外行为
EN

Stack Overflow用户
提问于 2020-06-15 01:04:13
回答 1查看 293关注 0票数 1

如果我在主目录上调用DocumentFile.fromTreeUri()并列出其内容,它会按预期返回与目录中包含的文件夹和文件相关的所有DocumentFile对象,但是当我尝试在其中一个DocumentFile文件夹的Uri上调用DocumentFile.fromTreeUri()时,它并没有像预期那样返回子目录中包含的所有与文件夹和文件相关的DocumentFile对象,而是实际上在其根Uri上返回了完全相同的调用内容

例如,我有一个包含3个文件的下载文件夹和一个包含2个文件的子文件夹,其结构如下

代码语言:javascript
复制
Download
-->file1
-->file2
-->file3
-->Subfolder
----->subfile1
----->subfile2

如果我在通过意图回调content://com.android.externalstorage.documents/tree/primary%3ADownload挑选的下载文件夹Uri上调用DocumentFile.fromTreeUri().listFiles(),它将返回我

代码语言:javascript
复制
-->file1
-->file2
-->file3
-->Subfolder

到现在为止一切都还好,现在如果我尝试获取与调用mysub.getUri()Subfolder相关的DocumentFile对象的Uri,我得到的content://com.android.externalstorage.documents/tree/primary%3ADownload/document/primary%3ADownload%2FSubfolder看起来似乎是正确的,但是如果我在它上面调用DocumentFile.fromTreeUri().listFiles(),当我列出它的内容时,我又得到了

代码语言:javascript
复制
-->file1
-->file2
-->file3
-->Subfolder

与对主下载文件夹Uri的调用完全相同。如果我直接调用mysub.listFiles(),也会发生同样的情况。这似乎是一个完全不合逻辑的设计。

我如何才能正确地从DocumentFile中获得与其父文件夹相关的DocumentFile对象,以致子文件夹DocumentFile可以列出其内容而不是其父文件夹的内容?

EN

回答 1

Stack Overflow用户

发布于 2021-05-21 10:34:39

我也有同样的问题。我在升级了文档文件版本后解决了这个问题。

implementation 'androidx.documentfile:documentfile:1.0.1'

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62375696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档