XMPPFramework - Как добавить пользовательские свойства в XMPPUserCoreDataStorageObject?

Я разработал приложение для чата с использованием XMPPFramework, но я столкнулся с проблемой, и теперь я застрял. Я использую NSFetchedResultsController, чтобы показать список пользователей, сохраненных в моем чате, но теперь я должен показать дополнительную информацию, такую ​​как пол и идентификатор места. Я попробовал следующее:

Добавьте свойства в XMPPUserCoreDataStorageObject.h, а затем:

- (void)xmppRoster:(XMPPRoster *)sender didReceivePresenceSubscriptionRequest:(XMPPPresence *)presence
{
XMPPUserCoreDataStorageObject *user = [self.xmppRosterStorage userForJID:[presence from]
                                                         xmppStream:self.xmppStream
                                               managedObjectContext:[self managedObjectContext_roster]];

user.venueId = [presence attributeStringValueForName:@"KEY_VENUEID"];
user.gender = [presence attributeStringValueForName:@"KEY_GENDER"];

NSError *error = nil;
[[self managedObjectContext_roster] save:&error];
}

Но когда я пытаюсь использовать эти свойства, приложение вылетает (нераспознанный селектор). Можно ли добавить пользовательские свойства в XMPPUserCoreDataStorageObject? Что я делаю неправильно? Я видел много уроков в интернете и следовал демонстрационному коду XMPPFramework, но ничего не нашел по этому поводу.

Заранее спасибо.

1 ответ

Решение

XMPPUserCoreDataStorageObject.h - это автоматически сгенерированный файл из модели CoreData. Вы должны добавить свойства в модель, а затем восстановить заголовки.

Другие вопросы по тегам