当前位置:   article > 正文

Parcelable encountered IOException writing serializable object (name = xxx.bean.UserInfoBean)

parcelable encountered ioexception writing serializable object (name = xx)

 

错误信息:

Parcelable encountered IOException writing serializable object (name = xxx.bean.UserInfoBean)

Caused by: java.io.NotSerializableException: xxx.bean.UserInfoBeanData$UserInfoBeanAssets

 

错误位置:

  1. Intent intent = new Intent(context,MainActivity.class);
  2. intent.putExtra("userInfoBean",userInfoBean);
  3. intent.putExtra("loginTokenStr",loginTokenStr);
  4. context.startActivity(intent);
  5. LoginActivity.this.finish();

 

解决方式:

原因是 实体类和它的内部类 都需要进行序列化,否则在使用 Intent 对象进行数据传递的时候会报错

public class UserInfoBeanData implements Serializable {
    private static final long serialVersionUID = 1L;

    private String email;
    private UserInfoBeanAssets assets;
    private String assetsTotal;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public UserInfoBeanAssets getAssets() {
        return assets;
    }

    public void setAssets(UserInfoBeanAssets assets) {
        this.assets = assets;
    }

    public String getAssetsTotal() {
        return assetsTotal;
    }

    public void setAssetsTotal(String assetsTotal) {
        this.assetsTotal = assetsTotal;
    }

    @Override
    public String toString() {
        return "UserInfoBeanData{" +
                "email='" + email + '\'' +
                ", assets=" + assets +
                ", assetsTotal='" + assetsTotal + '\'' +
                '}';
    }


    public class UserInfoBeanAssets implements Serializable {
        private static final long serialVersionUID = 1L;

        private UserInfoBeanUsdt usdt;
        private UserInfoBeanChars chars;

        public UserInfoBeanUsdt getUsdt() {
            return usdt;
        }

        public void setUsdt(UserInfoBeanUsdt usdt) {
            this.usdt = usdt;
        }

        public UserInfoBeanChars getChars() {
            return chars;
        }

        public void setChars(UserInfoBeanChars chars) {
            this.chars = chars;
        }

    }

}

 

 

 

 

 

 

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/1009365
推荐阅读
相关标签
  

闽ICP备14008679号