我的问题与这个问题非常相似。我使用 ACTION_OPEN_DOCUMENT_TREE 获得了目录的内容 Uri。得到了这样的东西
content://com.android.externalstorage.documents/tree/primary%3ASHAREit%2Fpictures
Run Code Online (Sandbox Code Playgroud)
选择目录时的结果。现在,我的问题是如何访问目录中的所有文件(最好也是子目录)。
Com*_*are 10
使用DocumentFile.fromTreeUri()创建一个DocumentFile为你的树。然后,使用listFiles()获取该树内的文档和子树的列表。对于那些isDirectory()return true,您可以进一步遍历树。对于其余部分,使用getUri()获取Uri文档的openInputStream()a ContentResolver,如果需要,您可以使用它来获取内容。
我对 Android 开发非常陌生,并且很长一段时间都坚持理解 CommonsWare 的答案(以及其他资源)。该资源也很有帮助。
build.gradle:implementation "androidx.documentfile:documentfile:1.0.1"
Run Code Online (Sandbox Code Playgroud)
tree,您可以使用DocumentFile.fromTreeUriimplementation "androidx.documentfile:documentfile:1.0.1"
Run Code Online (Sandbox Code Playgroud)
现在我要弄清楚如何使用这个 DocumentFile...(提示val inputStream = contentResolver.openInputStream(childDocument.uri):)
| 归档时间: |
|
| 查看次数: |
1751 次 |
| 最近记录: |