如何列出Android Q(API 29级)中的所有内部存储文件夹



我是编程新手,想在android studio中制作一个文件管理器。在getExteralStorageDirectory被弃用后,我在列出API级别29中的所有设备文件夹时遇到了问题。

根据文档,您必须使用ACTION_OPEN_DOCUMENT_TREE。这将为您提供所选directoryURI,一旦您有了URI,您就可以访问该directory的所有子级。来自文档

授予对目录内容的访问权限

文件管理和媒体创建应用程序通常管理目录层次结构中的文件。要在应用程序,使用ACTION_OPEN_DOCUMENT_TREE意图操作,该操作允许用户授予对整个目录树的访问权限。然后你的应用程序可以访问所选目录中的任何文件及其子目录。

github上还有ActionOpenDocumentTree示例应用程序,展示了如何实现此功能。

最新更新