Facebook v2与iOS SDK的集成
我试图将Facebook SDK与v2 Api集成。 因为Facebook允许用户拒绝任何他不想分享的权限(主要是电子邮件)。 但根据我们的要求,我们需要用户的电子邮件将其注册到服务器(电子邮件是主键),并且电子邮件还用于以多种方式连接用户 我对此有些怀疑Facebook v2与iOS SDK的集成,ios,facebook,email,facebook-graph-api,facebook-graph-api-v2.0,Ios,Facebook,Email,Facebook Graph Api,Facebook Graph Api V2.0,我试图将Facebook SDK与v2 Api集成。 因为Facebook允许用户拒绝任何他不想分享的权限(主要是电子邮件)。 但根据我们的要求,我们需要用户的电子邮件将其注册到服务器(电子邮件是主键),并且电子邮件还用于以多种方式连接用户 我对此有些怀疑 我想知道是否可以根据需要发送电子邮件 正如Facebook升级指南中提到的,我们可以重新询问用户关于被拒绝的权限 下面是一个代码示例,它试图在重新询问时执行,但没有收到用户的电子邮件 [[FBSession activeSessio
[[FBSession activeSession] requestNewReadPermissions:@[@"user_birthday",@"email"] completionHandler:^(FBSession *session, NSError *error) {
if (session.state == FBSessionStateOpen) {
[FBRequestConnection startForMeWithCompletionHandler:^(FBRequestConnection *connection, id<FBGraphUser> facebook_user, NSError *error) {
if (error) {
[self fbRequestFailedWithError:error];
} else {
[self processFacebookRequest:facebook_user];
}
}];
}
}
[[FBSession activeSession]requestNewReadPermissions:@[@“用户生日”,“电子邮件”]完成处理程序:^(FBSession*会话,NSError*错误){
if(session.state==FBSessionStateOpen){
[FBRequestConnection StartFormwithCompletionHandler:^(FBRequestConnection*连接,id facebook\u用户,N错误*错误){
如果(错误){
[自请求失败:错误];
}否则{
[self-processFacebookRequest:facebook_用户];
}
}];
}
}
您不能将电子邮件设置为所需权限,请参见此处:
并非所有用户都会有可用的电子邮件地址,即使他们授予您的应用程序许可-通过手机号码注册Facebook的用户,其电子邮件地址会被退回或需要重新验证,也不会通过API获得可用的电子邮件
您的代码看起来像是重新请求权限的代码,但也可能您已经被授予权限,但用户没有电子邮件地址