如何解决Android项目重建时出现的Android resource compilation错误
Android resource compilation failed报错解决方案
根因定位
从错误日志可以看出,报错是AAPT编译工具无法读取res/raw目录下的tune_3.midi文件导致的,和构建缓存无关,所以你之前清理缓存、重建项目的操作没有效果。
解决步骤
按以下顺序操作即可:
- 第一步:先关闭Android Studio弹出的「选择编码打开音频文件」弹窗,到任务管理器结束所有Android Studio相关进程,避免弹窗占用文件句柄导致读取失败,重启Android Studio后先尝试重新编译。
- 第二步:检查
tune_3.midi的文件名是否符合Android资源命名规范:只能包含小写字母、数字、下划线,不能有大写字符、空格、特殊符号、中文,如果文件名不合规修改后重新编译。 - 第三步:验证文件完整性,用本地midi播放器打开对应路径下的
tune_3.midi,如果无法播放说明文件损坏,替换为完好的文件后重新编译。 - 第四步:如果以上操作都无效,可以在模块级
build.gradle的android代码块中添加AAPT配置,跳过midi文件的压缩检查:
android { // 原有配置保留 aaptOptions { noCompress "midi" } }
添加后同步Gradle,再重新编译项目即可。
内容的提问来源于stack exchange,提问作者Joseph
相关产品推荐
相关产品推荐

