2016-09-18 3 views
1

Я использую ObjectiveDropboxОфициальную структуру интеграции Dropbox в приложении Objective-C (из-за устаревания v1 dropbox api). Framework linkПолучение информации о пользователе с помощью ObjectiveDropboxОфициальная структура

Я пытаюсь войти в систему с информацией о пользователе Dropbox (адрес электронной почты, имя и т. Д.). Вот мой код:

DropboxClient *client=[DropboxClientsManager authorizedClient]; 
 
    [[client.usersRoutes getCurrentAccount] 
 
    response:^_Nonnull(DBUSERSBasicAccount *response, DBError *dberror) 
 
    { 
 
      // loginLabel.text=[NSString stringWithFormat: @"%@\n%@", account.name, account.email]; 
 
       
 
      return response; 
 
       
 
     } 
 
    }];

Этот код не работает и additionnally вызывает странные ошибки из Xcode: Определение метода:

- (DBRpcTask<DBUSERSBasicAccount *, DBUSERSGetAccountError *> *_Nonnull)  getAccount:(NSString *_Nonnull)accountId;

- (DBRpcTask<TResponse, TError> *_Nonnull)response: 
 
    (void (^_Nonnull)(TResponse _Nullable, TError _Nullable, 
 
         DBError *_Nullable))responseBlock;

я застрял с этим в течение целого дня, любая помощь будет оценен: 1- Как получить Infos пользователей с помощью рамки или 2- Что вызывает ошибку, и как следует, что ненулевой метод называется?

Спасибо заранее

ответ

4

Итак, наконец, после 2-х дней изо всех сил, я нашел ответ:

DropboxClient *client = [DropboxClientsManager authorizedClient]; 
if(client) 
{ 


[[client.usersRoutes getCurrentAccount] response:^(DBUSERSFullAccount *account, DBNilObject *obj, DBError *error) { 
    if (error != nil) { 
     NSLog(@"Error %@", error.errorContent); 
    } 

    if (account != nil) { 
     NSLog(@"User's name %@", account.name.displayName); 

    } 
    if(self.hud) 
    [self.hud hideAnimated:YES]; 
}]; 

Я надеюсь, что это позволит сэкономить энергию другого разработчика и психическое здоровье :)

+0

getCurrentAccount никогда не возвращается для меня с действительным объектом клиента, это все еще работает для вас? – gregyoung14

+0

Да, это работает. Зарегистрирован ли ваш пользователь успешно? Какую ошибку вы получили? –

+0

В результате оказалось, что авторизованный пользователь не настроен правильно, теперь он работает правильно! Спасибо – gregyoung14

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