1

我有一个Salesforcemobilesdk-ios集成的 iPad 应用程序。第一次,我一登录就在 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

谢谢!

更新 我尝试在 appDidBecomeActive 中调用 loadAccounts 方法,即使这样也无法检索到详细信息。

[[SFUserAccountManager sharedInstance] loadAccounts:nil];
4

0 回答 0