我正在使用ObjectiveDropboxOfficial框架在Objective-C应用程序中进行Dropbox集成(由于v1 Dropbox API的弃用)。
Framework link

我正在尝试登录保管箱用户信息(电子邮件,姓名等)。这是我的代码:

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

             return response;

         }
     }];


该代码不起作用,并且还会导致来自xcode的奇怪错误:enter image description here
方法定义为:

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



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


我一整天都被困住了,任何帮助将不胜感激:
1-如何使用框架获取用户信息,或
2-什么原因导致错误,该Nonnull方法应如何调用?

先感谢您

最佳答案

因此,经过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];
}];

我希望这可以节省其他开发人员的精力和心理健康:)

关于ios - 使用ObjectiveDropboxOfficial框架获取用户信息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39560865/

10-10 18:37