Android Studio添加PNG图片报错原因

时间:2023-03-08 16:39:45

今天在网上看到一个关于Splash Activity的Android帖子,博主在一通讲解之后也给出了代码。于是果断下载下来了看看怎么实现的。一步步照着流程把这个功能实现了一遍。一切都没有大问题,但是在gradle编译期间提示报错:

libpng error: Not a PNG file

   从提示上看很简洁很明了,添加的资源不属于PNG格式的。但是我看了看资源文件夹下的文件,都是PNG格式结尾的。在网上搜了一通后在*上发现了一个帖子说:不要光看文件名是*.png结尾的,而要看看实际格式是不是PNG格式的。怎么看呢?有一种办法,直接用十六进制编辑器打开该文件,看看开始的几个字符是不是".png"。如下:

Android Studio添加PNG图片报错原因

另外还有一种简单的办法,用图片查看器一一打开这些图片文件,然后另存为PNG格式的文件即可。这种方法不管是不是,都重新存一遍是万无一失的,当然工作量相对也交到。

在使用PNG图片的过程中,可能还会遇到如下的错误提示:

iccp:Not recognizing known sRGB profile that has been edited

  之所以会出现这种错误是因为,高版本的Android SDK中的打包工具AAPT升级了libpng包,该工具包对PNG格式要求非常严格,因此一种解决办法是降低Compile SDK Version,使用低版本的SDK工具进行编译打包。当然,还有其他办法可以解决这个问题:使用图片编辑软件去除掉图片中的元数据即可:

  • ImageMagick
  • ImageOptim