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

Cordova安卓Release构建报错PNG签名损坏,无法生成APK求助

根因说明

报错的核心原因是你在config.xml中配置的安卓图标源为ICO格式的favicon.ico,Cordova构建安卓应用时仅会将指定源文件直接复制重命名为要求的PNG格式,不会自动完成格式转换,最终生成的ic_launcher.png实际是ICO文件,导致AAPT2编译时无法识别PNG签名触发报错。
你移除图标配置后仍报错是因为未清理旧构建缓存,platforms目录下残留的旧配置仍在清单文件中引用了自定义图标资源,没有生成对应文件导致资源缺失。

标准解决方案(保留自定义图标)

  1. 准备符合要求的图标文件
  • 生成不同密度的PNG格式安卓应用图标,对应尺寸为:mdpi 4848px、hdpi 7272px、xhdpi 9696px、xxhdpi 144144px、xxxhdpi 192*192px,将文件存放到项目www/assets/android-icons/目录下
  1. 更新config.xml配置
  • 移除原有的单条配置,将图标配置放到安卓平台标签内部,示例配置如下:
<platform name="android">
    <allow-intent href="market:*" />
    <icon src="www/assets/android-icons/icon-mdpi.png" density="mdpi" />
    <icon src="www/assets/android-icons/icon-hdpi.png" density="hdpi" />
    <icon src="www/assets/android-icons/icon-xhdpi.png" density="xhdpi" />
    <icon src="www/assets/android-icons/icon-xxhdpi.png" density="xxhdpi" />
    <icon src="www/assets/android-icons/icon-xxxhdpi.png" density="xxxhdpi" />
</platform>
  1. 清理旧缓存重新构建
  • 执行以下命令清理旧构建产物:
cordova platform remove android
cordova clean
  • 重新添加安卓平台(若官方源拉不到9.1.0版本,可临时切换到国内npm源后执行安装):
cordova platform add android@9.1.0
  • 执行正式包构建:
cordova build android --release

临时绕过方案(使用默认图标)

如果不需要自定义图标,可直接按以下步骤操作:

  1. 完全删除config.xml中所有自定义标签
  2. 执行以下命令清理并重新添加平台:
cordova platform remove android
cordova platform add android
  1. 直接执行构建命令即可,Cordova会自动生成有效PNG格式的默认图标,不会触发资源错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 07:45:02