我想打包数据类型为“对象”的值。为此,我正在使用writeValue(Object v)方法。

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeValue(lockMemberScore);
        dest.writeValue(lockFollowedMemberScore);
        dest.writeValue(lockGroupAvgScore);
    }

但这给了我以下错误
01-01 11:22:00.479: E/SyncService(9647): Parcel: unable to marshal value java.lang.Object@4122e3c0

最佳答案

您不能将通用对象写入宗地。

writeValue(Object v) 可以处理一长串数据类型(可在文档中找到),但是通用对象不是其中的一种...基本上,您的v不是:原始数据类型,Bundle,Map等,并且它不实现Parcelable或可序列化;因此writeValue()确实知道如何处理您的特定对象。

08-05 18:14