Facebook iOS SDK 3.2重新打开会话始终失败

Facebook iOS SDK 3.2重新打开会话始终失败,ios,facebook,session,sdk,Ios,Facebook,Session,Sdk,基本上,我浏览了这个页面并实现了我的Facebook登录 接下来,当用户再次打开应用程序时,我尝试重新打开会话,如下所示: [appDelegate openSessionWithAllowLoginUI:NO]; //The method is: - (BOOL)openSessionWithAllowLoginUI:(BOOL)allowLoginUI { NSArray *permissions = [[NSArray alloc] initWithObjects:

基本上,我浏览了这个页面并实现了我的Facebook登录

接下来,当用户再次打开应用程序时,我尝试重新打开会话,如下所示:

[appDelegate openSessionWithAllowLoginUI:NO];

//The method is:

- (BOOL)openSessionWithAllowLoginUI:(BOOL)allowLoginUI {
    NSArray *permissions = [[NSArray alloc] initWithObjects:
        @"email", 
        @"user_likes",
        nil];
    return [FBSession openActiveSessionWithReadPermissions:permissions
                                              allowLoginUI:allowLoginUI
                                         completionHandler:^(FBSession *session,
                                                         FBSessionState state,
                                                         NSError *error) {
                                         [self sessionStateChanged:session
                                                             state:state
                                                             error:error];
                                     }];
}
但FBSessionState始终为0:

/*! One of two initial states indicating that no valid cached token was found */
    FBSessionStateCreated                   = 0,
我尝试了几乎所有的方法,用FBSessionTokenCachingStrategy存储和恢复tokendata,但都没有成功。如果我打电话

[appDelegate openSessionWithAllowLoginUI:YES];

会话开始时显示LoginUI,但我不想每次都显示LoginUI。您能帮我吗?

当您说您试图使用FBSessionTokenCachingStrategy存储/还原数据时,您的意思是您使用适当的数据将其设置为FBSessionManualTokenCachingStrategy(您可以通过类方法isValidTokenInformation进行测试:在FBSessionManualTokenCachingStrategy中。设置令牌后,会话是否仍处于“FBSessionStateCreated”状态,或者是否更改为“FBSessionStateCreatedTokenLoaded”状态?