Первый раз, работая над Firebase приложения. Я понимаю, что это не позволяет вам сохранить фактический объект Objective C. Я понимаю, что все сохраняется в дереве JSON, которое может быть NSStrings, NSNumbers, NSArrays, NSDictionaries. Вам действительно нужно переходить к каждому свойству, чтобы получить фактическое значение. Ex.Сохранение объектов в Firebase
Скажите, что у вас есть myObject => Firebase не нравится. Вы должны установить значение, получив свойство. Ex. myObject.name (это будет строка). Это очень раздражает, если ваши объекты имеют много свойств.
Я понимаю, что вы можете реализовать NSCoding, чтобы сделать его немного более элегантным. Я никогда раньше этого не делал. У меня есть следующий объект для пользователя.
#import <Foundation/Foundation.h>
@interface User : NSObject <NSCoding>
@property (nonatomic, copy) NSString *username;
@property (nonatomic, copy) NSString *name;
@property (nonatomic, copy) NSString *currentCity;
@end
#import "User.h"
@implementation User
@dynamic username;
@dynamic name;
@dynamic currentCity;
-(void)encodeWithCoder:(NSCoder *)encoder{
[encoder encodeObject:self.username forKey:@"username"];
[encoder encodeObject:self.name forKey:@"name"];
[encoder encodeObject:self.currentCity forKey:@"currentCity"];
}
-(id)initWithCoder:(NSCoder *)decoder{
if (self = [super init]) {
self.username = [decoder decodeObjectForKey:@"username"];
self.name = [decoder decodeObjectForKey:@"name"];
self.currentCity = [decoder decodeObjectForKey:@"currentCity"];
}
return self;
}
поэтому при сохранении пользовательского объекта, который хранится в Firebase, мы просто закодировать объект, когда мы экономим на firebase?
Я немного смущен тем, как его сохранить или даже получить. Parse намного проще, но для этого приложения мне нужна пользовательская firebase.
Любая помощь или примеры того, как вы, ребята, обращались с этим, были бы весьма признательны.
Спасибо!
Привет, благодарю вас за этот ответ. Итак, по существу, все ваши объекты должны указывать на определенные узлы на Firebase? Я смог войти и заполнить свой объект данными из firebase - это просто не так просто, как синтаксический анализ. – Ronaldoh1
Да! Каждый объект (например, объект User) знал бы об этом узле в Firebase. По мере обновления объекта он автоматически узнает об обновлении соответствующего узла в Firebase. Я бы посоветовал не сравнивать сравнение Parse и Firebase; они - разные платформы, и то, как вы подходите к хранению (и с чем это делается), ваши данные обрабатываются по-разному. – Jay