Realm 2.0.0
Parceler 1.1.6
私のアンドロイドアプリでも領域として使用されているPOJOクラスでParcelerライブラリを使用しようとしています。どのような方法がありますio.realm.PersonRealmProxyの生成されたParcelableクラスが見つかりません
compile 'org.parceler:parceler:1.1.6'
apt 'org.parceler:parceler:1.1.6'
:私はこのような依存関係を宣言した
Unable to find generated Parcelable class for io.realm.PersonRealmProxy, verify that your class is configured properly and that the Parcelable class io.realm.PersonRealmProxy$ $Parcelable is generated by Parceler
:
しかし、このコード行は
Bundle bundle = new Bundle(1);
bundle.putParcelable(UpdatePersonDialog.PERSONUPDATE_KEY, Parcels.wrap(person)); /* Crash line */
にこのエラーメッセージがクラッシュしますこの問題を解決するには?
これは誰にも同じ問題がある場合、私は事前に
@Parcel(analyze = Person.class)
public class Person extends RealmObject{
@PrimaryKey
String mId;
String mFirstName;
String mLastName;
String mPhoneNumber;
String mDob;
String mZip;
public Person() {
}
public Person(String mDob, String mFirstName, String mId, String mLastName, String mPhoneNumber, String mZip) {
this.mDob = mDob;
this.mFirstName = mFirstName;
this.mId = mId;
this.mLastName = mLastName;
this.mPhoneNumber = mPhoneNumber;
this.mZip = mZip;
}
@Override
public boolean isManaged() {
return super.isManaged();
}
public String getId() {
return mId;
}
public void setId(String id) {
this.mId = id;
}
public String getDob() {
return mDob;
}
public void setDob(String dob) {
this.mDob = dob;
}
public String getFirstName() {
return mFirstName;
}
public void setFirstName(String firstName) {
this.mFirstName = firstName;
}
public String getLastName() {
return mLastName;
}
public void setLastName(String lastName) {
this.mLastName = lastName;
}
public String getPhoneNumber() {
return mPhoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.mPhoneNumber = phoneNumber;
}
public String getZip() {
return mZip;
}
public void setZip(String zip) {
this.mZip = zip;
}
}
感謝を使用しています、
をこれを行う?レルムオブジェクトは、データを格納する方法において非常に特殊なので、エンコード/デコードするべきではありません。インテントを介してオブジェクトを送信する必要がある場合は、オブジェクトのIDのみを送信し、他のアクティビティに対して再度フェッチする必要があります。 – jturolla