0
我正在使用脸书登录实施应用程序。我需要访问用户“公开个人资料”,以及“电子邮件ID”也。这里电子邮件ID是必须的。我可以登录,但在输入登录详细信息后,它会显示审查页面,在该审阅页面中显示“您提供的编辑信息”按钮,在这里我正面临问题。我在这里有2个疑问1)是否可以禁用“编辑您提供的信息”选项(或)2)是否可以禁用用户交互电子邮件字段,如公共配置文件。我的代码在下面。在iOS上使用最新的SDK登录Facebook的问题
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self toggleHiddenState:YES];
self.lblLoginStatus.text = @"";
self.loginButton.delegate = self;
self.loginButton.readPermissions = @[@"public_profile",@"email"];
}
#pragma mark - Private method implementation
-(void)toggleHiddenState:(BOOL)shouldHide{
self.lblUsername.hidden = shouldHide;
self.lblEmail.hidden = shouldHide;
self.profilePicture.hidden = shouldHide;
}
#pragma mark - FBLoginView Delegate method implementation
-(void)loginViewShowingLoggedInUser:(FBLoginView *)loginView{
self.lblLoginStatus.text = @"You are logged in.";
[self toggleHiddenState:NO];
}
-(void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id<FBGraphUser>)user{
NSLog(@"%@", user);
self.profilePicture.profileID = user.id;
self.lblUsername.text = user.name;
self.lblEmail.text = [user objectForKey:@"email"];
}
-(void)loginViewShowingLoggedOutUser:(FBLoginView *)loginView{
self.lblLoginStatus.text = @"You are logged out";
[self toggleHiddenState:YES];
}
-(void)loginView:(FBLoginView *)loginView handleError:(NSError *)error{
NSLog(@"%@", [error localizedDescription]);
}
你能解释一下吗?我们如何在这里得到结果。我正在这样做。 – 2015-02-11 12:53:55
[FBSession openActiveSessionWithReadPermissions:@ [@ “public_profile”,@ “电子邮件”,@ “user_friends”] allowLoginUI:YES completionHandler: ^(FBSession *会话,FBSessionState状态,NSError *错误){ //检索应用程序委托 AppDelegate * appDelegate =(AppDelegate *)[UIApplication sharedApplication] .delegate; [appDelegate sessionStateChanged:session state:state error:error]; }]; – 2015-02-11 13:01:07
只需在'openActiveSessionWithReadPermissions'内添加'FBRequestConnection'块,然后在'FBRequestConnection'块内检查'if(emailPermission){//然后访问被授予} else {//显示一个alertview并告诉用户他应该给予权限到他的电子邮件地址}' – trimi 2015-02-11 13:13:15