我正在开发的应用程序同时支持 iOS 5 和 6。对于 iOS 5,我使用 FBSession 对象获取访问令牌。同样的事情适用于 iOS 6,但不允许我使用设备上已经存在的 ACAccount,并且总是要求用户输入电子邮件/密码。
由于 Facebook 在几周内不会更新他们的 SDK 以支持此功能,而且我没有等待那么久的选项,我想知道如何使用帐户或社交框架获取访问令牌。
我花了几个小时寻找答案,但仍然没有运气。所以提前感谢大家。
编辑
这是使用 Facebook SDK 3.1+ 获取访问令牌的代码
[FBSession openActiveSessionWithReadPermissions:permissions
allowLoginUI:YES
completionHandler:^(FBSession *session, FBSessionState status, NSError *error){
if (session.isOpen) {
switch (status) {
case FBSessionStateOpen:
// here you get the token
NSLog(@"%@", session.accessToken);
break;
case FBSessionStateClosed:
case FBSessionStateClosedLoginFailed:
[[FBSession activeSession] closeAndClearTokenInformation];
break;
default:
break;
} // switch
}];