Parcelable遇到IOException,仅在某些手机中编写可序列化对象

时间:2018-04-29 14:43:38

标签: java android crash parcelable

我在Fragment.java的项目中有这个异常,我不知道是什么问题,因为我已经为MyClass类实现了Parcelable,不应该是它的问题。 我错过了什么吗?

    @Override
public void start(Stage stage) throws Exception {
    Parent root = FXMLLoader.load(getClass().getResource("/application/Sample.fxml"));

    Scene scene = new Scene(root);
    scene.setOnKeyPressed(event -> {
        String codeString = event.getCode().toString();
        if (event.getCode().isArrowKey()) {
            System.out.println("rlrlrl");
        }
    });
    stage.setScene(scene);
    stage.show();
}
  

由java.io.NotSerializableException引起mypackage.model.MyClass

这里是Fatal Exception: java.lang.RuntimeException: Parcelable encountered IOException writing serializable object (name = mypackage.a.a.a) at android.os.Parcel.writeSerializable(Parcel.java:1447) at android.os.Parcel.writeValue(Parcel.java:1395) at android.os.Parcel.writeArrayMapInternal(Parcel.java:665) at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1337) at android.os.Bundle.writeToParcel(Bundle.java:1079) at android.os.Parcel.writeBundle(Parcel.java:690) at android.support.v4.app.FragmentState.writeToParcel(Fragment.java:148) at android.os.Parcel.writeTypedArray(Parcel.java:1233) at android.support.v4.app.FragmentManagerState.writeToParcel(FragmentManager.java:564) at android.os.Parcel.writeParcelable(Parcel.java:1416) at android.os.Parcel.writeValue(Parcel.java:1322) at android.os.Parcel.writeArrayMapInternal(Parcel.java:665) at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1337) at android.os.Bundle.writeToParcel(Bundle.java:1079) at android.os.Parcel.writeBundle(Parcel.java:690) at android.support.v4.app.FragmentState.writeToParcel(Fragment.java:150) at android.os.Parcel.writeTypedArray(Parcel.java:1233) at android.support.v4.app.FragmentManagerState.writeToParcel(FragmentManager.java:564) at android.os.Parcel.writeParcelable(Parcel.java:1416) at android.os.Parcel.writeValue(Parcel.java:1322) at android.os.Parcel.writeArrayMapInternal(Parcel.java:665) at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1337) at android.os.Bundle.writeToParcel(Bundle.java:1079) at android.os.Parcel.writeBundle(Parcel.java:690) at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:3153) at android.app.ActivityThread$StopInfo.run(ActivityThread.java:3455) at android.os.Handler.handleCallback(Handler.java:743) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:150) at android.app.ActivityThread.main(ActivityThread.java:5621) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:684) 代码:

MyClass

我删除了方法体,使其缩短审核时间。我在我的活动之间用Intent传递了这个对象,我的代码正在许多手机上运行,​​但这种例外只发生在一些手机中,而不是所有手机中。

0 个答案:

没有答案