这几天打包apk,需要使用aapt命令做移除apk中的老证书文件、重添加新证书文件,再二次签名重打包的动作。结果发现在使用aapt remove命令时,老是要报error during crunch - archive is toast错误,经过一天的对比查看发现,跟引用的com.android.tools.build:gradle:4.1.1版本和gradle-6.5-bin版本有关,只要等于或大于这个版本,这会报这个错误,这应该是aapt的bug。
解决办法:
1、gradle插件低于这2个版本,不太现实,总不可能一直不升级呀。
2、由于apk本质上就是个zip文件,干脆在删除文件时,直接用zip解压软件打开apk包,手动删除了算球,剩余的aapt add命令和重签名的操作,再用命令行完成。
这可真是名副其实的,研究问题一整天,解决问题1秒钟。。。