У меня возникла проблема с Realm, которая вызывает его сбой при исключении NullPointerException каждый раз, когда я пытаюсь установить RealmObject на другой после его сохранения.Установка объекта RealmObject в другой объект RealmObject после его извлечения из Realm
Например.
Person person = new Person();
person.setName("Martha");
Realm realm = Realm.getInstance(this);
realm.beginTransaction();
realm.copyToRealm(person);
realm.commitTransaction();
Person personFromRealm = realm.where(Person.class).findFirst();
realm.beginTransaction();
Pet pet = new Pet();
pet.setType("dog");
personFromRealm.setPet(pet); <--- This line will crash
realm.commitTransaction();
Я не уверен, что еще я могу сделать, чтобы этого не произошло. Причина, по которой я должен это сделать, заключается в том, что объект Person должен быть создан в одном месте, и я хочу добавить животных в другое.
Я нашел это работает:
Realm realm = Realm.getInstance(this);
Person personFromRealm = realm.where(Person.class).findFirst();
realm.beginTransaction();
Pet pet = personFromRealm.getPet();
pet.setType("dog");
realm.commitTransaction();
Это хорошо для простых структур данных. Но я использую объекты Realm, которые содержат два или три других объекта RealmObject, и манипулирование ими, как это, кажется, представляет собой много ненужной работы.
Я просто хочу знать, не хватает ли я чего-то. Или, если есть более простой способ сделать это. Любая помощь будет принята с благодарностью.
Благодаря
Отлично! Спасибо. Я даже не думал об этом. Ваша помощь очень ценится. – SeanSWatkins