如何使用iOS Facebook SDK 2.4登录

时间:2015-08-03 23:56:05

标签: ios objective-c facebook facebook-ios-sdk

我使用FBSDKLoginManager在我的应用中实施Facebook登录。 Facebook docs似乎暗示这会为后续应用启动保存令牌,以便用户不必每次都登录:

  

FBSDKLoginManager为您设置此令牌,当它设置currentAccessToken时,它还会自动将其写入钥匙串缓存。

我在应用启动时尝试从所述缓存中检索此令牌,或者如果找不到它,则显示我应用的Facebook登录屏幕:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    [FBSDKProfile enableUpdatesOnAccessTokenChange:YES];

    if ([FBSDKAccessToken currentAccessToken]) {
        // user is logged in, continue to app's main screen
    } else {
        // show login screen
    }

    //...
}

每次都会显示登录屏幕。 Facebook文档没有解释如何处理这个非常简单的用例。我错过了什么吗?

1 个答案:

答案 0 :(得分:2)

你需要调用" [[FBSDKApplicationDelegate sharedInstance]应用程序:application didFinishLaunchingWithOptions:launchOptions]"在尝试获取缓存令牌之前。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

[[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];

...