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

已在Manifest声明READ_EXTERNAL_STORAGE,仍出现未解析引用错误

解决Unresolved reference: READ_EXTERNAL_STORAGE报错

针对你遇到的代码中Manifest.permission.READ_EXTERNAL_STORAGE无法解析的问题,按以下步骤排查解决:

1. 检查权限常量的导入

确保代码文件顶部已正确导入Android系统的Manifest类:

import android.Manifest

如果你的项目中存在自定义的Manifest类(比如自己创建的同名文件),会导致混淆,此时可以改用完整路径引用:

android.Manifest.permission.READ_EXTERNAL_STORAGE

2. 适配Android 13+的权限变更

如果你的项目targetSdkVersion设置为33及以上,Android 13开始拆分了存储权限,读取图片应使用新的权限常量READ_MEDIA_IMAGES,而非READ_EXTERNAL_STORAGE。可以按版本做兼容处理:

val requiredPermission = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
    Manifest.permission.READ_MEDIA_IMAGES
} else {
    Manifest.permission.READ_EXTERNAL_STORAGE
}

// 后续检查和请求权限都用requiredPermission
ContextCompat.checkSelfPermission(applicationContext, requiredPermission)

同时记得在Manifest中添加对应权限:

<!-- Android 13+ 读取图片权限 -->
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<!-- 兼容Android 12及以下 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="32" />

3. 清理Android Studio缓存同步gradle

如果以上都没问题,大概率是IDE缓存导致的:

  • 执行File -> Sync Project with Gradle Files同步项目
  • 执行File -> Invalidate Caches... -> Invalidate and Restart清理缓存并重启IDE

内容的提问来源于stack exchange,提问作者Captai-N

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 00:22:49