Android 包含抽象类实例的内部类:getting";Parcelable在写入可序列化对象时遇到IOException;

Android 包含抽象类实例的内部类:getting";Parcelable在写入可序列化对象时遇到IOException;,android,serialization,Android,Serialization,我知道也有类似的话题,但没有一个能帮助我处理我的情况 我有一个类,其中包含一个内部序列化的非静态类。 当我按下设备“主页”键(应用程序将进入后台)时,崩溃正在发生 这是我的密码 public class pageParam implements Serializable { private static final long serialVersionUID = 7793437011565026799L; public OnCloseListener onCloseListe

我知道也有类似的话题,但没有一个能帮助我处理我的情况

我有一个类,其中包含一个内部序列化的非静态类。 当我按下设备“主页”键(应用程序将进入后台)时,崩溃正在发生

这是我的密码

public class pageParam implements Serializable {

    private static final long serialVersionUID = 7793437011565026799L;

    public OnCloseListener onCloseListener;
    public long userId;
    public boolean hasName;
    public int age;

    public pageParam(OnCloseListener onCloseListener, long userId,
            boolean userId, int age) {
        this.onCloseListener = onCloseListener;
        this.userId = userId;
        this.hasName = hasName;
        this.age = age;
    }
}

请注意,OnCloseListener是抽象的,我可以在OnCloseListener的实现中添加serialVersionUID(无论是否这样做,它都会失败)

编辑:

这是OnCloseListener()的实现:

如您所见,它还具有串行密钥

编辑2:

即使在我将OnCloseListener更改为常规类(不是抽象类)之后,我仍然会遇到这个异常错误

公共类OnCloseListener实现了可序列化{

    /**
     * 
     */
    private static final long serialVersionUID = 2718040340149001112L;

    public void OnClose() {
        ......
   } 
}

可能与OnClose()中的代码有关?我在上面做了一些操作。

你能发布你正在使用的onCloseListener的具体实现吗?(我认为(不确定)它还必须明确地实现Serializable(但不记得为什么))我认为从
OnCloseListener
的声明中删除
abstract
就可以了;它应该做什么?我认为抽象对象无法成功序列化。
OnCloseListener OnCloseListener = new OnCloseListener() {

    /**
     * 
     */
    private static final long serialVersionUID = -8848214522109319925L;

    @Override
    public void OnCloseListener() {
        ......
 }
}
    /**
     * 
     */
    private static final long serialVersionUID = 2718040340149001112L;

    public void OnClose() {
        ......
   } 
}