Facebook iOS FbDidLogin 未第一次调用
Posted
技术标签:
【中文标题】Facebook iOS FbDidLogin 未第一次调用【英文标题】:Facebook iOS FbDidLogin not called 1st Time 【发布时间】:2011-11-23 12:54:52 【问题描述】:我有一个奇怪的问题,即我第一次尝试使用 Facebook 应用程序进行授权时没有调用 FBDidLogin。我正在使用来自 GitHub 的最新 Facebook ios SDK。
我已经在我的 App Delegate 中实现了这个:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
return [[[SocialClass sharedSingleton] facebook] handleOpenURL:url];
还有我的SocialClass
的初始化:
facebook = [[Facebook alloc] initWithAppId:@"0000001234" andDelegate: self];
facebook.accessToken = [[NSUserDefaults standardUserDefaults] objectForKey:@"FBAccessTokenKey"];
facebook.expirationDate = [[NSUserDefaults standardUserDefaults] objectForKey:@"FBExpirationDateKey"];
还有我在社交类中的didlogin方法:
- (void)fbDidLogin
NSLog(@"facebook logged in");
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"];
[defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"];
[defaults synchronize];
// now let's grab the user info
if(getFriends == YES)
[self getFacebookFriends];
else
[self getUserInfo];
同样,我的问题是第一次授权尝试没有触发 fbDidLogin,只有第二次尝试。我在 all 尝试的应用程序委托 openURL
方法中正确打印了 Facebook 令牌。
【问题讨论】:
【参考方案1】:查看this 线程。希望 Facebook 会在教程中解释这一点。花了我半天时间。
【讨论】:
以上是关于Facebook iOS FbDidLogin 未第一次调用的主要内容,如果未能解决你的问题,请参考以下文章
Facebook api ios-sdk,代表不工作,没有调用 fbDidLogin
适用于 iOS 的 Facebook SDK,fbDidLogin 从未在多笔尖应用程序中调用
Facebook fbDidLogin 在 [facebook authorize:permissions] 之后被多次调用