Android中的Bitmap序列化失败的解决方法

之前写了个User类(实现了Serializable接口),类变量里有Bitmap类型的头像图片,Bitmap导致序列化不成功,报 "android.graphics.Bitmap"相关错误

成都创新互联公司,为您提供成都网站建设成都网站制作、网站营销推广、网站开发设计,对服务葡萄架等多个行业拥有丰富的网站建设及推广经验。成都创新互联公司网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!

解决方法之一:把Bitmap对象替换成byte数组来表示间接表示图片,在需要Bitmap的时候再讲byte数组转换成Bitmap对象。这是因为byte数组和Bitmap之间的可以转化,实现也比较方便。

附byte数组与Bitmap的相互转换方法:

Bitmap转换成byte数组

private byte[] bitmap2Bytes(Bitmap bitmap) {
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  bitmap.compress(CompressFormat.JPEG, 100, baos);
  return baos.toByteArray();
}

 byte数组转换成Bitmap

 private Bitmap byte2Bitmap(byte[] data) {
    return BitmapFactory.decodeByteArray(data, 0, data.length);
  }

总结

以上所述是小编给大家介绍的Android中的Bitmap序列化失败的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对创新互联网站的支持!


分享名称:Android中的Bitmap序列化失败的解决方法
网页URL:http://pwwzsj.com/article/pgehec.html