5

我正在使用以下代码访问 facebook

 [FBSession openActiveSessionWithAllowLoginUI:TRUE];
 NSArray *permissions = [[NSArray alloc] initWithObjects:
                        @"email",
                        nil];
[FBSession openActiveSessionWithReadPermissions:permissions allowLoginUI:true    
completionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
    if (error) {
        NSLog(@"Failure");
    }
    else
        {

 }];

当用户在 iOS 设置中启用了 facebook 帐户并且在 iOS 设置中没有启用帐户时,它工作正常,然后它会进入 safari 进行 facebook 身份验证。但是假设用户首先使用 abcd@gmail.com 启用帐户,然后在一段时间后添加了新帐户,即 efgh@gmail.com。那么应用程序如何知道用户在 iOS 设置中更改了他/她的帐户。如何使用 facebook SDK 进行检查。有人有想法吗?

谢谢大家。

4

1 回答 1

0

存储在 FBSession 中的信息(访问令牌等)完全独立于任何其他帐户权限(包括 iOS6、Safari 或 Facebook 应用程序)。这些其他权限仅用于连接您的应用程序,一旦连接,您的应用程序就会独立运行。这意味着即使用户注销并使用不同的 id 再次登录,它也不会影响您的应用程序。您的应用程序的用户需要在您的应用程序内部主动注销,并重新启动一次登录以更改帐户。

这就是为什么用户有一种在您的应用程序中识别自己的方式(通过个人资料图片和/或在某处显示的姓名)非常重要的原因,这样他们就知道他们正在使用哪个帐户。

于 2013-05-01T16:05:29.580 回答