我正在使用此Google Sample中所述的目录选择。它确实提供了所选目录的子目录的文件名和 mime 类型。COLUMN_DOCUMENT_ID
如果我在光标查询上使用,我也可以获得文件的文档 ID 。我对孩子的文件 URI 感兴趣。当我使用ACTION_OPEN_DOCUMENT
代替时ACTION_OPEN_DOCUMENT_TREE
,我很容易得到子 uri,它是通过添加一个%2Fchildfile.extention
(%2F 只是一个正斜杠) 获得的。所以我尝试使用以下代码获取子文件 uri -
uri = Uri.parse(docUri.toString()+"%2F"+fileName);
我得到了文件名,但是当我在其上运行 exists() 方法时(通过将其转换为 DocumentFile),它返回 false。这意味着,要么我没有文件的权限,要么这不是获取孩子 uri 的正确方法。
我在这里遗漏了什么还是有其他方法可以选择一个文件夹并轻松获取所有子项的文件 uri。
PS:我目前正在Marshamallow中检查它。