Android Studio添加PNG图片报错原因
今天在网上看到一个关于Splash Activity的Android帖子,博主在一通讲解之后也给出了代码。于是果断下载下来了看看怎么实现的。一步步照着流程把这个功能实现了一遍。一切都没有大问题,但是在gradle编译期间提示报错:
libpng error: Not a PNG file
从提示上看很简洁很明了,添加的资源不属于PNG格式的。但是我看了看资源文件夹下的文件,都是PNG格式结尾的。在网上搜了一通后在stackoverflow上发现了一个帖子说:不要光看文件名是*.png结尾的,而要看看实际格式是不是PNG格式的。怎么看呢?有一种办法,直接用十六进制编辑器打开该文件,看看开始的几个字符是不是".png"。如下:
另外还有一种简单的办法,用图片查看器一一打开这些图片文件,然后另存为PNG格式的文件即可。这种方法不管是不是,都重新存一遍是万无一失的,当然工作量相对也交到。
在使用PNG图片的过程中,可能还会遇到如下的错误提示:
iccp:Not recognizing known sRGB profile that has been edited
之所以会出现这种错误是因为,高版本的Android SDK中的打包工具AAPT升级了libpng包,该工具包对PNG格式要求非常严格,因此一种解决办法是降低Compile SDK Version,使用低版本的SDK工具进行编译打包。当然,还有其他办法可以解决这个问题:使用图片编辑软件去除掉图片中的元数据即可:
- ImageMagick
- ImageOptim
作者:24K纯开源
Email: zhangzhongke007@163.com
出处:http://www.cnblogs.com/csuftzzk/
本文版权归24K纯开源和博客园共同拥有,欢迎转载,但未经作者同意必须保留此声明,且在文章明显位置给出原文链接,否则保留追究法律责任的权利。