android - Parcelable遇到IOException写入可序列化对象: java. io.NotSerializableException : org. json.JSONArray

标签 android serialization arrays

我有时会遇到这个错误注销,我知道这个 logcat 意味着我的 ABCModel 不可序列化,但它是。 ABCModel 内部使用的所有模型实例都是序列化的,

这是完整的 Logcat:

05-30 11:38:49.249: E/AndroidRuntime(4305): FATAL EXCEPTION: main
05-30 11:38:49.249: E/AndroidRuntime(4305): java.lang.RuntimeException: Parcelable encountered IOException writing serializable object (name = 

com.kxs.project.model.ABCModel)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeSerializable(Parcel.java:1181)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeValue(Parcel.java:1135)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeMapInternal(Parcel.java:493)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Bundle.writeToParcel(Bundle.java:1612)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at android.os.Parcel.writeBundle(Parcel.java:507)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at android.support.v4.app.FragmentState.writeToParcel(Fragment.java:132)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeTypedArray(Parcel.java:1004)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.support.v4.app.FragmentManagerState.writeToParcel(FragmentManager.java:368)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeParcelable(Parcel.java:1156)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeValue(Parcel.java:1075)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeMapInternal(Parcel.java:493)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Bundle.writeToParcel(Bundle.java:1612)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Parcel.writeBundle(Parcel.java:507)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:1919)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.app.ActivityThread.handleStopActivity(ActivityThread.java:2869)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.app.ActivityThread.access$900(ActivityThread.java:124)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1165)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Handler.dispatchMessage(Handler.java:99)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.os.Looper.loop(Looper.java:137)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at android.app.ActivityThread.main(ActivityThread.java:4436)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at java.lang.reflect.Method.invokeNative(Native Method)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at java.lang.reflect.Method.invoke(Method.java:511)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at dalvik.system.NativeStart.main(Native Method)
05-30 11:38:49.249: E/AndroidRuntime(4305): Caused by: java.io.NotSerializableException: org.json.JSONArray
05-30 11:38:49.249: E/AndroidRuntime(4305):     at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1364)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1671)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1517)
05-30 11:38:49.249: E/AndroidRuntime(4305):     at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1481)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:979)
  05-30 11:38:49.249: E/AndroidRuntime(4305):   at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:368)
  05-30 11:38:49.249: E/AndroidRuntime(4305):   at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1074)
  05-30 11:38:49.249: E/AndroidRuntime(4305):   at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1404)
  05-30 11:38:49.249: E/AndroidRuntime(4305):   at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1671)
  05-30 11:38:49.249: E/AndroidRuntime(4305):   at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1517)
  05-30 11:38:49.249: E/AndroidRuntime(4305):   at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1481)
  05-30 11:38:49.249: E/AndroidRuntime(4305):   at java.io.ObjectOutputStream.writeFieldValues(ObjectOutputStream.java:979)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at java.io.ObjectOutputStream.defaultWriteObject(ObjectOutputStream.java:368)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at java.io.ObjectOutputStream.writeHierarchy(ObjectOutputStream.java:1074)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at java.io.ObjectOutputStream.writeNewObject(ObjectOutputStream.java:1404)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at java.io.ObjectOutputStream.writeObjectInternal(ObjectOutputStream.java:1671)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1517)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:1481)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    at android.os.Parcel.writeSerializable(Parcel.java:1176)
 05-30 11:38:49.249: E/AndroidRuntime(4305):    ... 24 more

最佳答案

05-30 11:38:49.249: E/AndroidRuntime(4305): Caused by: java.io.NotSerializableException: org.json.JSONArray

可能在您的模型中某处包含 JSONArray 对象。它不可序列化:JSONArray source code

关于android - Parcelable遇到IOException写入可序列化对象: java. io.NotSerializableException : org. json.JSONArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23948515/

相关文章:

android - 磨损项目-attr 'android:windowSwipeToDismiss'

android - Android Logcat 中的 GC_FOR_MALLOC、GC_EXPLICIT 和其他 GC_* 是什么意思?

java - 序列化 swing/awt 组件

c - 将二维数组传递给 C 中的函数

c++ - 传递 int 数组时的行为变化

android - 将 RIGHT 外连接转换为左外连接 SQLite

android - 强制打开 Android 通知

php - 序列化后的字符串未插入数据库

c# - 用于序列化的 BinaryFormatter

jquery - 将数组插入日历引导数组内