You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android 13下Scoped Storage权限未强制生效?存在认知误区求助

Scoped Storage 误解要点解析

1. 媒体集合是逻辑分类,而非物理目录

官方文档提到的MediaStore.Images/MediaStore.Video/MediaStore.Audio是逻辑媒体集合,对应文件的类型,而非具体的存储文件夹。只要文件属于图片、视频、音频类型(比如JPG、MP4),无论它存放在下载目录、TikTok的子文件夹还是其他公共目录,都会被系统自动扫描并纳入对应的MediaStore集合。

2. Android 13+ 的权限规则简化与用户授权例外

  • Android 13及以上版本,访问MediaStore中的图片、视频、音频无需申请READ_EXTERNAL_STORAGE,只需分别声明READ_MEDIA_IMAGES、READ_MEDIA_VIDEO、READ_MEDIA_AUDIO权限。
  • 如果你的应用是通过**系统文件选择器(如ACTION_OPEN_DOCUMENT)**获取文件,只要用户手动选择了目标文件,应用就会获得该文件的临时访问权限——这属于用户主动授权,不受Scoped Storage的常规权限限制,这也是你能访问TikTok文件夹内文件的核心原因。

3. 第三方应用的存储权限策略

多数第三方应用(如TikTok、Lensa)会将生成的媒体文件保存到公共可访问目录(如Download、DCIM下的子文件夹),并且设置文件权限为全局可读。这类文件会被MediaStore自动索引,其他应用无需额外权限即可通过MediaStore访问。只有当第三方应用将文件存放在自己的私有目录(如getFilesDir()、getExternalFilesDir())且未开放全局权限时,其他应用才无法直接访问。

4. PDF文件的访问逻辑

PDF不属于MediaStore的媒体集合范畴,按照Scoped Storage规则,访问PDF需通过系统文件选择器让用户手动授权,或者申请READ_EXTERNAL_STORAGE权限。你能访问下载目录的PDF,同样是因为用户通过文件选择器主动选择后,应用获得了临时访问权限。

内容的提问来源于stack exchange,提问作者Martin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 21:55:34