我在构建具有自定义类的领域对象时遇到问题。
@Parcel(
value = Parcel.Serialization.BEAN,
analyze = { Message.class })
@RealmClass
public class Message implements Comparable<Message>, RealmModel {`
@PrimaryKey
@Index
private long id;
@JsonProperty("thread_id")
long threadId;
@JsonProperty("message")
public String message;
@JsonProperty("user")
public User user;
...
}
当服务器发送 json 响应时,尝试解析为 Message 领域对象
realm.createObjectFromJson(MesssageMessage.class, JSONObject)
问题是用户。我有一个编译错误“不支持归档用户”。
下面是不是领域对象的用户类。
@JsonIgnoreProperties("incomplete_signed_up")
public class User implements KeepClassFromProguard, Parcelable {
public static final Parcelable.Creator<User> CREATOR = new
Parcelable.Creator<User>() {
@Override
public User createFromParcel(Parcel in) {
return new User(in);
}
@Override
public User[] newArray(int size) {
return new User[size];
}
};
public long id;
@JsonProperty("account_id")
private long accountId;
@JsonProperty("display_name")
public String display_name;
@JsonProperty("nick_name")
public String nickname;
@JsonProperty("user_detail")
public UserDetail userDetail;
...
}
我阅读了https://gist.github.com/cmelchior/ddac8efd018123a1e53a和http://parceler.org/#getting_parceler,但我还没有得到答案。我不能将每个类都更改为领域对象,因为它们都有另一个自定义类。
有谁知道这是如何处理的?希望有什么好的例子。谢谢。