在Android 4.4+;中读取包裹值时解组未知类型代码异常;

在Android 4.4+;中读取包裹值时解组未知类型代码异常;,android,parcelable,Android,Parcelable,我使用的是Parcelable界面,在Android 4.3(果冻豆)之前,它工作良好,但当我在运行在Android 4.4+(Kitkat)的设备上安装相同的应用程序时,它在读取包裹时崩溃。其错误如下: java.lang.RuntimeException: Parcel android.os.Parcel@42acce90: Unmarshalling unknown type code 6881383 at offset 1864 尝试阅读时: getIntent().getExtra

我使用的是
Parcelable
界面,在
Android 4.3(果冻豆)
之前,它工作良好,但当我在运行在
Android 4.4+(Kitkat)
的设备上安装相同的应用程序时,它在读取包裹时崩溃。其错误如下:

 java.lang.RuntimeException: Parcel android.os.Parcel@42acce90: Unmarshalling unknown type code 6881383 at offset 1864
尝试阅读时:

getIntent().getExtras().getString("TYPE").contains("SOME_TYPE");
我在
intent
中添加了
extra
,如下所示:

 Intent oIntent = new Intent(getActivity().getApplicationContext(), EventFragment.class);
 oIntent.putExtra("TYPE", "SOME_TYPE");

经过很长一段时间和大量的研发,我开始明白,我们不应该在另一个
ArrayList
中,在一个
Parcelable
对象中使用
ArrayList
。这是问题的根源


因此,我最终使用了
JAVA
提供的
Serializable
接口,因为这两个概念是相同的。

经过长时间的研发,我知道我们不应该在另一个
ArrayList
对象中使用
ArrayList
。这是问题的根源


因此,我最终使用了
JAVA
提供的
Serializable
接口,因为这两个概念是相同的。

等等。。。你是要加价吗?或者某个对象的实例?
“SOME\u TYPE”
字符串或对象是某种类型的吗?我正在输入字符串值,正如我在这里所描述的,“SOME\u TYPE”是某种字符串。等等。。。你是要加价吗?或者某个对象的实例?
“SOME\u TYPE”
字符串或对象是某种类型的吗?我在这里输入字符串值,正如我所描述的,“SOME\u TYPE”是某种字符串。它们都不相同。Parcelable是Android的一种选择。Parcelable比Serializable效率更高,因为它是专为Android开发的,并时刻牢记性能。编组和解编组包裹内的ArrayList并不难。如果你发布你的代码,我也许能帮你。它们都不一样。Parcelable是Android的一种选择。Parcelable比Serializable效率更高,因为它是专为Android开发的,并时刻牢记性能。编组和解编组包裹内的ArrayList并不难。如果你发布你的代码,我可能会帮助你。