Ionic+Angular项目Android Studio生成APK报错:非法字符<:>
解决Ionic+Angular项目Android构建时mergeDebugResources非法字符错误
检查资源文件与路径合法性
确保项目所有资源文件(包括drawable、values等目录下的文件)的文件名、文件夹路径不含冒号、空格或其他特殊字符。重点排查自己手动添加的资源,避免出现类似icon:logo.png这类命名。彻底清理构建缓存与平台文件
- 在项目根目录执行Ionic清理命令:
ionic capacitor clean android - 打开Android Studio,执行
File → Invalidate Caches...,勾选"Clear file system cache and local history"后重启。 - 重新同步Android平台:
ionic capacitor sync android
- 在项目根目录执行Ionic清理命令:
验证应用ID与Gradle配置
- 检查
capacitor.config.ts(Capacitor)或config.xml(Cordova)中的appId,确保格式合法(如io.ionic.starter.app,无冒号等特殊字符)。 - 打开Android工程的
app/build.gradle,确认applicationId与appId一致,且无非法字符。 - 尝试更新项目根目录
build.gradle中的Gradle插件版本到稳定版,例如:dependencies { classpath 'com.android.tools.build:gradle:7.4.2' }
- 检查
排查第三方依赖问题
暂时移除最近添加的第三方依赖,重新构建项目。如果错误消失,说明该依赖引入了异常资源路径,需更换版本或替换依赖。临时修复生成的资源文件
找到错误提示中指定的values.xml文件(通常在app/build/intermediates/merged_resources/debug/out/values/目录下),打开后检查是否存在带冒号的异常资源引用(如@string/title:sub),修正后重新执行构建。
内容的提问来源于stack exchange,提问作者Diego Cares
相关产品推荐
相关产品推荐

