我认为这个问题与这个问题(Facebook SDK 3.1 – Error validating access token)有关,据说它在SDK 3.1.1中得到修复.
但是,我正在使用SDK 3.1.1并通过在发生无效访问令牌错误时手动调用accountStore renewCredentialsForAccount事件来解决此问题.
解决方法 基于 this thread,我发现验证有效会话的唯一方法是执行简单的图形API调用.如果出现错误,FBSession.activeSession.isOpen将返回NO,这表示令牌已过期.+ (voID) ValIDateSession{ FBRequest *userDetails = [[FBRequest alloc] initWithSession:FBSession.activeSession graPHPath:@"/me"]; [userDetails startWithCompletionHandler:^(FBRequestConnection *connection,NSDictionary *result,NSError *error) { if (error) { if (FBSession.activeSession.isOpen) { // Less probable,so check error code. } else { // Bingo: here we kNow for sure that the token was useless. // Expected behavior: reauthorize. } } else if (result) { NSLog(@"%@",result); // token is valID,continue } }];}
即使在删除应用程序后,iOS似乎仍保留Facebook令牌,因此在需要时再次确保令牌有效是一种很好的做法.
总结以上是内存溢出为你收集整理的ios6 – iOS SDK似乎无法处理iOS 6中的撤销访问令牌全部内容,希望文章能够帮你解决ios6 – iOS SDK似乎无法处理iOS 6中的撤销访问令牌所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)