カスタムクラスを持つRealmオブジェクトの構築に問題があります。サーバはJSONレスポンスを送信するとカスタムクラスを持つRealmオブジェクトをシリアル化する方法
@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;
...
}
することは、問題がユーザーである
realm.createObjectFromJson(MesssageMessage.class, JSONObject)
でメッセージレルムオブジェクトとして解析してみてください。コンパイルエラー "Filed user is not supported"が表示されます。
以下は、レルムオブジェクトではないUserクラスです。
@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を読んで、私はまだ答えますcould't。 すべてのクラスをrealmオブジェクトに変更することはできません。それらはすべて別のカスタムクラスを持っているからです。
これはどのように処理されるのですか?良い例があることを願っています。おかげさまで