Android Studio新建项目时color.xml等XML文件出现异常代码求助
我之前也踩过这个坑!每次新建项目XML里就蹦出一堆看不懂的乱码垃圾,烦得要死。后来折腾了几次,终于搞清楚原因和解决办法了:
为什么会出现这种乱码异常?
- 缓存文件损坏:Android Studio的构建缓存(比如项目里的
build目录或者用户目录下的.gradle/caches)很容易因为意外中断构建、磁盘空间不足或者突然关机损坏,导致生成的资源文件(像colors.xml)被错误写入二进制垃圾数据。 - 资源合并工具bug:旧版本的Android Gradle Plugin(AGP)或者Gradle本身存在资源合并的小bug,处理XML资源时把内部临时数据错误输出到了最终文件里。
- 编码配置冲突:虽然少见,但如果项目的编码设置和Android Studio全局编码不匹配(比如全局用UTF-8,项目却强制用其他编码),也可能导致资源文件解析异常,出现乱码。
可行的解决办法
按从简单到复杂的顺序来,一般前两个就能解决问题:
- 清理IDE缓存并重启重构
- 点击Android Studio顶部菜单栏的
File→Invalidate Caches... - 在弹出的窗口勾选
Invalidate and Restart,等IDE重启完成后,选择Build→Rebuild Project重新构建项目。
- 点击Android Studio顶部菜单栏的
- 手动删除构建缓存目录
如果上面的方法没用,手动删掉项目根目录下的build文件夹,还有用户目录里的.gradle/caches文件夹(Windows路径一般是C:\Users\你的用户名\.gradle\caches,Mac是~/Users/你的用户名/.gradle/caches),然后重启AS再构建。 - 升级AGP和Gradle版本
打开项目根目录的build.gradle文件,把AGP和Gradle升级到稳定的最新版本(比如AGP用7.4.2以上,Gradle对应匹配的版本),旧版本的这类资源合并bug在新版本里大多已经被修复。 - 统一编码设置
- 点击
File→Settings→Editor→File Encodings - 确保
Global Encoding、Project Encoding和Default encoding for properties files全部设置为UTF-8,点击OK后重新构建项目。
- 点击
- 恢复默认项目模板
如果是每次新建项目都出问题,大概率是默认的项目模板被损坏了:- 删除Android Studio的模板目录,Windows一般是
C:\Users\你的用户名\.AndroidStudio版本号\plugins\android\templates,Mac是~/Library/Application Support/Google/AndroidStudio版本号/plugins/android/templates - 之后重新安装Android Studio或者更新到最新版本,就能恢复干净的默认模板了。
- 删除Android Studio的模板目录,Windows一般是
内容的提问来源于stack exchange,提问作者Awais Zaki
相关产品推荐
相关产品推荐

