Android Studio编译报错:values.xml存在非法字符<:>求解决方案
解决APK反编译导入Android Studio后资源编译报错(Illegal char <:>)
这个错误是因为反编译生成的values.xml文件中存在非法冒号(:),Android资源文件不允许资源名称包含冒号,或者资源值里出现了格式错误的冒号。按以下步骤解决:
- 定位目标文件:根据报错路径找到项目里对应的
res/values/values.xml(如果是多语言或版本变体,可能在values-xx或values-vxx目录下)。 - 查找并修正非法字符:
- 打开文件后,搜索冒号
:,重点检查资源名称(比如<string name="abc:def">这类格式),把冒号替换成下划线_或直接删除,同时要同步修改所有引用该资源的代码和布局文件。 - 如果是资源值里的冒号,确认是否是正常业务内容,若是则保留;如果是反编译产生的乱码/错误格式,根据上下文调整或者参考原APK的实际表现修正。
- 打开文件后,搜索冒号
- 清理重建项目:执行
Build > Clean Project,再执行Build > Rebuild Project重新编译。
如果jadx反编译的资源经常出现这类问题,可以尝试先用apktool反编译APK的资源部分,再将jadx导出的代码合并到项目中,apktool对Android资源的解析兼容性更强。
内容的提问来源于stack exchange,提问作者wasa
相关产品推荐
相关产品推荐

