我正在将iOS集成在iOS应用程序中,以便在我的应用程序中登录。 如果我们使用电话号码登录facebook,是否可以从iOS中的facebook API获取电子邮件ID。 目前我正在使用以下代码。
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login logInWithReadPermissions:@[@"email"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
if (error) {
// Process error
} else if (result.isCancelled) {
// Handle cancellations
} else {
// If you ask for multiple permissions at once, you
// should check if specific permissions missing
if ([result.grantedPermissions containsObject:@"email"]) {
if ([FBSDKAccessToken currentAccessToken]) {
[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:nil]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if (!error) {
NSLog(@"fetched user:%@", result);
}
}];
}
}
}
}];
答案 0 :(得分:0)
如果用户已注册电子邮件,您将收到电子邮件地址。如果用户已注册电话号码,您可能会将电子邮件字段显示为空。请看看Facebook开发人员的参考资料。
https://developers.facebook.com/docs/facebook-login/permissions#reference-email
请注意,即使您申请电子邮件权限,也不能保证您会收到电子邮件地址。例如,如果有人使用电话号码而不是电子邮件地址注册Facebook,则电子邮件字段可能为空。