SFUserAccountManager теряет свои данные после завершения работы приложения

У меня есть приложение для iPad с Salesforcemobilesdk-ios интегрированный. В первый раз, как только я вхожу в систему, я устанавливаю все учетные данные в методе oauthCoordinatorDidAuthenticate следующим образом:

- (void) oauthCoordinatorDidAuthenticate: (SFOAuthCoordinator *) coordinator authInfo:(SFOAuthInfo *)info 
{

    [SFAuthenticationManager sharedManager].coordinator = coordinator;
    [[SFAuthenticationManager sharedManager] coordinator].credentials = coordinator.credentials;
    SFUserAccount *userAccount = [[SFUserAccount alloc]initWithIdentifier:s_currentAccountIdentifier];
    userAccount.credentials = coordinator.credentials;
    userAccount.accessScopes = coordinator.scopes;
    [SFUserAccountManager sharedInstance].currentUser = userAccount;
    [[SFUserAccountManager sharedInstance] applyCredentials:coordinator.credentials];
    [[SFUserAccountManager sharedInstance] saveAccounts:nil];
}

Это работает нормально, когда я пытаюсь проверить действительный OAuth сеанс, когда я использую или в фоновом режиме.

Но когда я закрываю приложение (приложение закрывается) и запускаю его снова, SFUserAccountManager Не удалось получить подробности и проверить правильность сеанса, вместо этого снова показывался экран входа в систему Salesforce.

Как убедиться, что SFUserAccountManager а также SFAuthenticationManager сохраняет его детали, даже когда я закрываю приложение и запускаю его снова.

Спасибо!

Обновление Я попытался вызвать метод loadAccounts в appDidBecomeActive, но даже тогда не смог получить подробности.

[[SFUserAccountManager sharedInstance] loadAccounts:nil];

0 ответов

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