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

重启App后访问图片URI遭权限拒绝的Android技术问题

Android 权限拒绝问题排查与解决记录

做Android开发总免不了遇到令人抓狂的情况……目前我用模拟器进行测试,碰到了一个因新特性导致的权限问题,错误日志如下:

Permission Denial: opening provider com.google.android.apps.photos.contentprovider.impl.MediaContentProvider from ProcessRecord{6ebfe9e 22355:xxx/u0a140} (pid=22355, uid=10140) that is not exported from UID 10068

我已经在所有场景下都授予了EXTERNAL_STORAGE权限,但问题依然存在。下面是完整的场景还原:

  • 用户选择图片(使用ACTION_GET_CONTENT),Activity返回结果正常,图片能在应用内正常显示。
  • 将图片URI保存至应用数据库。
  • 重启应用。
  • 尝试访问同一URI时,触发上述权限拒绝异常。

之后我尝试在图片选择的Activity返回结果中调用takePersistableUriPermission,结果却抛出了“无持久权限可用”的异常。

编辑补充:后来我采用了官方推荐的方案——仅使用OPEN_DOCUMENT,并且不再尝试将返回的URI转换为媒体路径。在此郑重声明:

我绝不会再尝试将URI转换为Media Store路径。

(尽管之前用ACTION_GET_CONTENT加路径转换是可行的——好吧,我忍不住吐槽一下。)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:55:45