序列化对象包含Bitmap,报错NotSerializableException android.graphics.Bitmap

例如:

public static class PicShareListBean implements Serializable {
            private String shareTitle;
            private String shareContent;
            private String sharePic;
            private transient Bitmap combinePic;
}

给Bitmap 增加 transient 字段,告诉Java不要序列化它。

另外

ava中的瞬态关键字用于指示不应序列化字段。

另外,在使用Android时,您应该考虑使用Parcelable而不是Serializable(请参阅此threaddoc

使用Parcelable,您可以使用(从[这里]'How To: Parcel a bitmap in Android)存储/检索位图。

//Store
Parcel parcel = Parcel.obtain();
Bitmap sourceBitmap = Bitmap.createBitmap(200, 400, Config.ARGB_8888);
sourceBitmap.writeToParcel(parcel, 0);

//Retrieve
parcel.setDataPosition(0);
Bitmap destinationBitmap = Bitmap.CREATOR.createFromParcel(parcel);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容