我正在使用以下代码访问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进行检查。有人有想法吗?
感谢所有人。
答案 0 :(得分:0)
存储在FBSession中的信息(访问令牌等)完全独立于任何其他帐户权限(包括iOS6,Safari或Facebook应用程序)。这些其他权限仅用于连接您的应用,一旦连接,您的应用就会独立运行。这意味着即使用户注销,并使用不同的ID再次登录,它也不会影响您的应用。您的应用的用户需要主动在您的应用内注销,并启动另一次登录才能更改帐户。
这就是为什么用户有一种在应用程序内部识别自己的方式非常重要(通过个人资料图片和/或他们的名字显示在某处),这样他们就知道他们正在使用哪个帐户。