Android 运行时错误: Parcelable 序列化失败 - com.example.zhcs_4.logic.Ljno 和 com.example.zhcs_4.logic.Params
{"title":"E/AndroidRuntime: FATAL EXCEPTION: main\n\tProcess: com.example.zhcs_4, PID: 31078\n\tjava.lang.RuntimeException: Parcelable encountered IOException writing serializable object (name = com.example.zhcs_4.logic.Ljno)\n\t\tat android.os.Parcel.writeSerializable(Parcel.java:1761)\n\t\tat android.os.Parcel.writeValue(Parcel.java:1709)\n\t\tat android.os.Parcel.writeArrayMapInternal(Parcel.java:777)\n\t\tat android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1506)\n\t\tat android.os.Bundle.writeToParcel(Bundle.java:1181)\n\t\tat android.os.Parcel.writeBundle(Parcel.java:817)\n\t\tat android.content.Intent.writeToParcel(Intent.java:9480)\n\t\tat android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:4340)\n\t\tat android.app.Instrumentation.execStartActivity(Instrumentation.java:1610)\n\t\tat android.app.Activity.startActivityForResult(Activity.java:4472)\n\t\tat androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:574)\n\t\tat android.app.Activity.startActivityForResult(Activity.java:4430)\n\t\tat androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:560)\n\t\tat android.app.Activity.startActivity(Activity.java:4791)\n\t\tat android.app.Activity.startActivity(Activity.java:4759)\n\t\tat com.example.zhcs_4.Activity.LjsousuoActivity$onCreate$1$1$1.onResponse(LjsousuoActivity.kt:118)\n\t\tat retrofit2.DefaultCallAdapterFactory$ExecutorCallbackCall$1$1.run(DefaultCallAdapterFactory.java:83)\n\t\tat android.os.Handler.handleCallback(Handler.java:789)\n\t\tat android.os.Handler.dispatchMessage(Handler.java:98)\n\t\tat android.os.Looper.loop(Looper.java:164)\n\t\tat android.app.ActivityThread.main(ActivityThread.java:6541)\n\t\tat java.lang.reflect.Method.invoke(Native Method)\n\t\tat com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)\n\t\tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)\n\tCaused by: java.io.NotSerializableException: com.example.zhcs_4.logic.Params\n\t\tat java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1233)\n\t\tat java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1597)\n\t\tat java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1558)\n\t\tat java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1481)\n\t\tat java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1227)\n\t\tat java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:347)\n\t\tat android.os.Parcel.writeSerializable(Parcel.java:1756)\n\t\tat android.os.Parcel.writeValue(Parcel.java:1709)\n\t\tat android.os.Parcel.writeArrayMapInternal(Parcel.java:777)\n\t\tat android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1506)\n\t\tat android.os.Bundle.writeToParcel(Bundle.java:1181)\n\t\tat android.os.Parcel.writeBundle(Parcel.java:817)\n\t\tat android.content.Intent.writeToParcel(Intent.java:9480)\n\t\tat android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:4340)\n\t\tat android.app.Instrumentation.execStartActivity(Instrumentation.java:1610)\n\t\tat android.app.Activity.startActivityForResult(Activity.java:4472)\n\t\tat androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:574)\n\t\tat android.app.Activity.startActivityForResult(Activity.java:4430)\n\t\tat androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:560)\n\t\tat android.app.Activity.startActivity(Activity.java:4791)\n\t\tat android.app.Activity.startActivity(Activity.java:4759)\n\t\tat com.example.zhcs_4.Activity.LjsousuoActivity$onCreate$1$1$1.onResponse(LjsousuoActivity.kt:118)\n\t\tat retrofit2.DefaultCallAdapterFactory$ExecutorCallbackCall$1$1.run(DefaultCallAdapterFactory.java:83)\n\t\tat android.os.Handler.handleCallback(Handler.java:789)\n\t\tat android.os.Handler.dispatchMessage(Handler.java:98)\n\t\tat android.os.Looper.loop(Looper.java:164)\n\t\tat android.app.ActivityThread.main(ActivityThread.java:6541)\n\t\tat java.lang.reflect.Method.invoke(Native Method)\n\t\tat com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)\n\t\tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)\nI/zygote: Do full code cache collection, code=990KB, data=634KB\nI/zygote: After code cache collection, code=945KB, data=545KB\n是什么错误内容:这段错误信息是 Android 运行时报出的 FATAL EXCEPTION 错误,错误原因如下:\n\njava.lang.RuntimeException: Parcelable encountered IOException writing serializable object (name = com.example.zhcs_4.logic.Ljno)\nCaused by: java.io.NotSerializableException: com.example.zhcs_4.logic.Params\n\n这段错误信息提示了一个序列化错误,即在序列化对象 com.example.zhcs_4.logic.Ljno 时遇到了 IOException。具体的原因是 com.example.zhcs_4.logic.Params 类没有实现序列化接口,导致无法序列化对象。\n\n要解决这个问题,可以尝试以下几种方法:\n\n1. 让 com.example.zhcs_4.logic.Params 类实现 Serializable 接口,这样就可以正确地序列化对象。\n2. 如果 com.example.zhcs_4.logic.Params 类不需要被序列化,可以将其成员变量标记为 transient,这样在序列化过程中会被忽略。\n3. 检查 com.example.zhcs_4.logic.Ljno 类中是否包含其他需要序列化的对象,如果有,也需要确保这些对象都实现了 Serializable 接口。\n\n请根据具体情况选择合适的解决方法来修复该错误。
原文地址: https://www.cveoy.top/t/topic/p094 著作权归作者所有。请勿转载和采集!