【错误记录】Android Studio 编译报错 ( AAPT: error: failed to read PNG signature: file does not start with PN )
2023-09-14 09:07:28 时间
一、报错信息
编译 Android Studio 项目时 , 报错
AGPBI: {"kind":"error","text":"Android resource compilation failed","sources":[{"file":"D:\\002_Project\\002_Android_Learn\\ClassLoader_Demo\\app\\src\\main\\res\\drawable\\abc.png"}],"original":"ERROR:D:\\002_Project\\002_Android_Learn\\ClassLoader_Demo\\app\\src\\main\\res\\drawable\\abc.png: AAPT: error: failed to read PNG signature: file does not start with PNG signature.\n ","tool":"AAPT"}
AGPBI: {"kind":"error","text":"Android resource compilation failed","sources":[{"file":"D:\\002_Project\\002_Android_Learn\\ClassLoader_Demo\\app\\src\\main\\res\\drawable\\abc.png"}],"original":"ERROR:D:\\002_Project\\002_Android_Learn\\ClassLoader_Demo\\app\\src\\main\\res\\drawable\\abc.png: AAPT: error: file failed to compile.\n ","tool":"AAPT"}
> Task :app:mergeDebugResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> A failure occurred while executing com.android.build.gradle.internal.res.Aapt2CompileRunnable
> Android resource compilation failed
ERROR:D:\002_Project\002_Android_Learn\ClassLoader_Demo\app\src\main\res\drawable\abc.png: AAPT: error: failed to read PNG signature: file does not start with PNG signature.
ERROR:D:\002_Project\002_Android_Learn\ClassLoader_Demo\app\src\main\res\drawable\abc.png: AAPT: error: file failed to compile.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 22s
57 actionable tasks: 3 executed, 54 up-to-date
二、解决方案
报错的原因是 Android 项目中使用的 png 格式的图片格式错误 ,
在 build.gradle 中的 android 层级配置了
aaptOptions {
// aapt 附加参数
additionalParameters '--rename-manifest-package', 'com.example.classloader_demo2'
// 是否开启 png 图片优化检查
cruncherEnabled true
}
配置 , cruncherEnabled 配置的作用是开启 png 图片优化检查 ,
如果 png 图片格式错误 , 就会报上述错误 ;
解决方案 :
① 删除上述报错的 abc.png 图片即可 ;
② 如果想要保留上述图片 , 则将 " android # aaptOptions # cruncherEnabled " 设置为 false 即可 , 程序可编译完成 ;
aaptOptions {
// aapt 附加参数
additionalParameters '--rename-manifest-package', 'com.example.classloader_demo2'
// 是否开启 png 图片优化检查
cruncherEnabled true
}
相关文章
- android 置灰不可点击,Android Studio 运行按钮灰色的完美解决方法
- android开机动画多长时间_Android开机动画原理分析
- android定时器取消,Android定时器崩溃取消
- android 获取收到短信验证码,Android自动获取短信验证码
- android触摸屏事件,Android Touch事件分析
- android登录注册跳转的代码_Android开发代码
- Android触摸事件_android设置按钮点击事件
- Android修改字体_android设置字体样式
- 【错误记录】Android Studio 中 DataBinding 布局报错 ( Resources$NotFoundException: String resource ID #0xd )
- 【错误记录】Android 应用连接 BLE 设备无法读取数据 ( 可以写出数据 | 无法读取数据 )
- 【错误记录】Android Studio 导入外部 so 动态库报错 ( java.lang.UnsatisfiedLinkError | 指定 APK 打包动态库的 CPU 架构 )
- 【错误记录】Android Studio 编译报错 ( Gradle 下载错误导致 Failed to open zip file 报错 )
- 【错误记录】Android Studio 编译时 Kotlin 代码编译报错 ( Not enough information to infer type variable T )
- 【错误记录】Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. | Android Studio 降级 )
- 【错误记录】Android Studio 编译报错 ( Could not determine java version from ‘11.0.8‘. ② | 升级 Gradle 版本 )
- 【错误记录】Android 中使用 Kotlin 为 EditText 组件设置文本报错 ( Type mismatch. Required:Editable. Found:String )
- 【错误记录】Android Studio 编译报错 ( AAPT: error: failed to read PNG signature: file does not start with PN )
- 【错误记录】Android Studio 编译报错 ( The minCompileSdk (33) specified in a dependency‘s AAR metadata META-I )
- 【错误记录】Android Studio 编译报错 ( Android Gradle plugin requires Java 11 to run. You are currently using )
- Android Studio 导入项目 出现安装Error:Cause: failed to find target with hash string ‘android-23’ 等错误详解手机开发