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() {
......
}
}