Android自适应图标报错:URI资源未识别及编译失败求助(新手)
解决Android自适应图标添加失败的问题
一、先解决编译失败的核心问题(找不到ic_launcher/ic_launcher_round资源)
编译报错的根本原因是项目缺少系统识别的自适应图标入口文件,或文件位置、命名不符合要求:
核对文件结构与命名
- 从IconKitchen下载的图标包解压后,需包含两类资源:
- 各密度mipmap文件夹(如
mipmap-hdpi、mipmap-mdpi):存放ic_launcher_background.png、ic_launcher_foreground.png、ic_launcher_monochrome.png mipmap-anydpi-v26文件夹:必须包含ic_launcher.xml和ic_launcher_round.xml(这是系统默认读取的图标入口文件)
- 各密度mipmap文件夹(如
- 将这些文件夹完整复制到项目的
res目录下,确保未漏文件或修改文件名。
- 从IconKitchen下载的图标包解压后,需包含两类资源:
检查Manifest配置
打开AndroidManifest.xml,确认<application>标签的图标属性正确指向资源:<application android:icon="@mipmap/ic_launcher" android:roundIcon="@mipmap/ic_launcher_round" <!-- 其他属性 --> >清理重建项目
执行以下操作修复缓存问题:- 点击工具栏
Build → Clean Project - 再点击
Build → Rebuild Project - 重新运行应用
- 点击工具栏
二、处理Android Studio的URI识别警告
Resource registered by this uri is not recognized是IDE的非功能性警告,不影响编译,可按以下方式解决:
- 打开
ic_launcher.xml,将鼠标悬停在<adaptive-icon>标签上,选择弹出的Fetch external resource选项,让IDE自动下载并关联Schema。 - 若自动下载失效,手动配置:
- 打开
Settings → Languages & Frameworks → Schemas and DTDs - 点击右上角
+按钮,输入URIhttp://schemas.android.com/apk/res/android - 在
File字段选择Android SDK目录下的platforms/android-[你的SDK版本]/data/res/values/attrs.xml文件(如android-33)
- 打开
新手避坑提示
- 不要修改
ic_launcher.xml的文件名,系统默认以此命名作为图标入口 - 确保图标文件后缀正确(.png或.xml),避免多余后缀导致资源识别失败
- 若对手动复制文件不熟悉,可使用Android Studio自带的
Image Asset工具,一键生成符合规范的自适应图标结构
内容的提问来源于stack exchange,提问作者Lolou.
相关产品推荐
相关产品推荐

