2013-09-26 2 views
2

Это могут быть очень простые вопросы, но мне любопытно, есть ли лучшее решение. Мне интересно, если quickblox кэширует текущего пользователя. Если вы знакомы с Parse, я ищу метод типа [PFUser CurrentUser].Ссылка на текущего пользователя в приложении quickblox

Если этого не существует, то каким образом вы можете обратиться к текущему пользователю с любого viewController, как только они вошли в приложение. (при запуске требуется логин). Я собираюсь просто сохранить Id этого пользователя для использования позже (NSUserDefaults или что-то подобное).

Кроме того, это быстрый блок входа в систему. Устойчив к запуску приложений.

Любые идеи и ввод приветствуются. Благодаря

ответ

1

нет CurrentUser недвижимость,

я предлагаю использовать следующий механизм:

1) создать Синглтон

LocalStorageController.h

@interface LocalStorageController : NSObject 

+ (instancetype)shared; 

@property (nonatomic, strong) QBUUser *qbUser; 

@end 

LocalStorageController .m

#import "LocalStorageController.h" 

@implementation LocalStorageController 

@synthesize qbUser = _qbUser; 

+ (instancetype)shared 
{ 
    static LocalStorageController *instance = nil; 
    static dispatch_once_t onceToken; 

    dispatch_once(&onceToken, ^{ 
     instance = [[LocalStorageController alloc] init]; 
    }); 

    return instance; 
} 

@end 

2) пользователь Сохранить QB после авторизации LoginViewController.m

@implementation LoginViewController 

- (void)login 
{ 
    [QBUsers logInWithUserLogin:@"qbUser1" password:@"qbUser1" delegate:self]; 
} 

- (void)completedWithResult:(Result *)result{ 
    if([result isKindOfClass:QBUUserResult.class] && result.success){ 
     QBUUserResult *res = (QBUUserResult *)result; 

     // save user 
     [LocalStorageController shared].qbUser = res.user; 
    } 
} 

3) использовать в любом месте вашего пользователя

ViewController1.m

- (void)doSomething{ 
    QBUUser *currentUser = [LocalStorageController shared].qbUser; 
} 

ViewController2.m

- (void)doSomething{ 
    QBUUser *currentUser = [LocalStorageController shared].qbUser; 
} 
+0

как мы сохранить этот пользователь, если мы завершаем приложение. – morroko

+0

Хранить его в общих настройках –

Смежные вопросы