来自 Android 文档, https://developer.android.com/training/data-storage/manage-all-files#all-files-access
“应用程序可以通过执行以下操作请求用户访问所有文件:
_在清单中声明 MANAGE_EXTERNAL_STORAGE 权限。_
_使用 ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION 意图操作将用户定向到系统设置页面,他们可以在其中为您的应用启用以下选项:允许访问管理所有文件。”_
我试过的
我知道如何请求权限的唯一方法是使用 ActivityCompat
。我试过了:
ActivityCompat.requestPermissions(this, new String[]{Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION},1);
和
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.MANAGE_EXTERNAL_STORAGE},1);
两者都不做任何事情。
Android 文档内容广泛,但并不是最受新手欢迎的文档。我了解意图,并且知道它们可用于在活动之间切换,但我不知道“意图操作”是什么以及如何使用它来请求权限
原文由 Chris A 发布,翻译遵循 CC BY-SA 4.0 许可协议
在科特林中:
(来自 这个示例项目)
您可能习惯于隐式
Intent
。文档要求您使用显式Intent
,其中一个带有操作字符串,在本例中为Uri
。Uri
将具有package
方案并通过其应用程序 ID 识别您的应用程序。该代码片段将启动系统提供的活动,从理论上讲,该活动将使用户选择授予您的应用
MANAGE_EXTERNAL_STORAGE
权限。