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

构建代码时触发AAPT2错误及资源缺失导致应用构建失败

解决AAPT2错误:找不到指定Drawable资源的问题

这种突然出现的资源引用失败、触发AAPT2错误的情况我太熟悉了——之前项目运行好好的,突然构建炸锅,大概率是资源相关的小问题,咱们一步步排查解决:

  • 先确认资源文件是否真的存在
    直奔app/src/main/res/drawable(包括各种分辨率的drawable-xxx目录),检查ic_menu_home_selection、ic_menu_my_account_selection这些文件有没有被误删、文件名是不是大小写错了(Android资源文件名严格区分大小写!),或者是不是被不小心移到其他模块里去了。

  • 检查arrays.xml里的引用格式
    打开app/src/main/res/values/arrays.xml,逐行核对这些drawable的引用:确保是@drawable/ic_menu_home_selection这种正确格式,有没有拼写错误、多打/漏打字符,或者别名引用的格式不对。

  • 清理构建缓存+重建项目
    缓存抽风是Android Studio的老毛病了,试试这几步:

    1. 点击顶部菜单栏的Build > Clean Project
    2. 接着点Build > Rebuild Project
    3. 如果还不行,手动删除项目根目录的.gradle文件夹和模块下的build文件夹,再重新构建
  • 排查依赖模块的资源问题
    如果这些drawable是来自其他依赖模块,先确认那个模块有没有正确添加到项目依赖里,而且该模块本身能正常编译。另外还要检查有没有资源冲突——比如其他模块有同名资源,导致你的目标资源被覆盖了。

  • 检查AAPT2相关配置
    打开gradle.properties文件,看看有没有手动设置过android.enableAapt2=false(新版本默认是开启AAPT2的),如果有,把这行删掉或者改成true,然后重新同步项目。

要是以上方法都没搞定,最后试试大招:点击File > Invalidate Caches...,勾选Clear file system cache and local history,然后重启Android Studio,很多奇怪的构建问题都能这么解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:45:50