过去两天我一直在尝试为我的应用连接多个帐户,但没有成功。
我已经读过Facebook SDK可能无法正确清除缓存令牌。我使用的是3.1.1版本。
这是怎么回事。
从全新安装:
我从openActiveSessionWithReadPermissions收到错误代码: FBSessionStateClosedLoginFailed 即使我在Facebook要求我允许访问我的信息时按下OK按钮,返回的授权变量也会显示NO。
不幸的是,我做的研究给我带来了多个失败的解决方案。 我尝试使用此函数重新同步:
- (void)fbResync
{
ACAccountStore *accountStore;
ACAccountType *accountTypeFB;
if ((accountStore = [[ACAccountStore alloc] init]) && (accountTypeFB = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook] ) )
{
NSArray *fbAccounts = [accountStore accountsWithAccountType:accountTypeFB];
id account;
if (fbAccounts && [fbAccounts count] > 0 && (account = [fbAccounts objectAtIndex:0]))
{
[accountStore renewCredentialsForAccount:account completion:^(ACAccountCredentialRenewResult renewResult, NSError *error)
{
//we don't actually need to inspect renewResult or error.
if (error){
}
}];
}
}
fbAccounts总是给我一个空数组。所以我无法真正重新同步。
我还尝试在状态开关中清除facebook令牌
case FBSessionStateClosed:
case FBSessionStateClosedLoginFailed:
{
[FBSession.activeSession close];
[FBSession.activeSession closeAndClearTokenInformation];
// Clear out the Facebook instance
[self.facebook logout];
self.facebook.accessToken = nil;
self.facebook.expirationDate = nil
}break;
无论我做什么,似乎我无法完全摆脱我的facebook令牌。 我找到的唯一方法是重置IPAD的设置,这不是解决方案。
有没有人可以尝试更多选择?
谢谢!
门票我知道: