【发布时间】:2015-05-13 07:05:50
【问题描述】:
我正在使用 fb sdk 提供的 facebook 登录按钮在我的应用程序中实现 facebook 登录。当我注销时,facebook 按钮确实会再次更改回登录。但是当我点击它时,safari 应用程序会打开显示“您已经授权该应用程序”单击确认或取消。实际上我需要这里的 facebook 登录名和密码屏幕。我无法切换用户,直到我重置模拟器。如何在每次我注销时以编程方式重置 safari 中的内容,以便每次都会显示登录屏幕。
请注意,当我手动清除 safari 的网站数据时,它会再次显示登录页面。是否可以通过编程方式完成。
我用于登录的代码如下
//creating the login button
FBLoginView *loginView =
[[FBLoginView alloc] initWithReadPermissions:
@[@"public_profile", @"email", @"user_friends"]];
loginView.frame=CGRectMake(50, 500, 225, 55);
loginView.delegate=self;
[self.view addSubview:loginView];
//delegate method when logged in
- (void)loginViewFetchedUserInfo:(FBLoginView *)loginView
user:(id<FBGraphUser>)user {
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
[defaults setObject:[user objectForKey:@"id"] forKey:@"LoggedInUserID"] ;
[self checkandsaveNewUserInBackend:user];
[self performSegueWithIdentifier:@"Login" sender:self];
}
//logout code
- (IBAction)logoutButtonPressed:(id)sender {
[FBSession.activeSession closeAndClearTokenInformation];
[self.navigationController popToRootViewControllerAnimated:YES];
}
【问题讨论】:
-
你的问题解决了吗
-
是的,但结果和以前一样……fb web ui 使登录用户会话保持活动状态……因此无法切换配置文件
标签: ios facebook facebook-ios-sdk