Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS FBSDKLoginManager获取电子邮件_Ios_Objective C_Facebook_Email - Fatal编程技术网

iOS FBSDKLoginManager获取电子邮件

iOS FBSDKLoginManager获取电子邮件,ios,objective-c,facebook,email,Ios,Objective C,Facebook,Email,我在这里学习了关于SDK的Facebook教程: 我的问题是,我可以获得用户信息,但我无法获得电子邮件,它不在当前配置文件中。我有名字、姓氏、用户id等 在哪里可以找到电子邮件字段,因为当我这样做时 “如果([result.grantedPermissions containsObject:@”email“])” 它告诉我用户已授予该电子邮件。您是否尝试过以下操作: if ([result.grantedPermissions containsObject:@"email"]) {

我在这里学习了关于SDK的Facebook教程:

我的问题是,我可以获得用户信息,但我无法获得电子邮件,它不在当前配置文件中。我有名字、姓氏、用户id等

在哪里可以找到电子邮件字段,因为当我这样做时 “如果([result.grantedPermissions containsObject:@”email“])”


它告诉我用户已授予该电子邮件。

您是否尝试过以下操作:

if ([result.grantedPermissions containsObject:@"email"]) { 
    NSLog(@"Granted all permission");
    if ([FBSDKAccessToken currentAccessToken]) {
        [[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:nil] startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
           if (!error) {
               NSLog(@"%@",result);
           }
        }];
    }
} else {
    NSLog(@"Not granted");
}

您是否尝试过以下方法:

if ([result.grantedPermissions containsObject:@"email"]) { 
    NSLog(@"Granted all permission");
    if ([FBSDKAccessToken currentAccessToken]) {
        [[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:nil] startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
           if (!error) {
               NSLog(@"%@",result);
           }
        }];
    }
} else {
    NSLog(@"Not granted");
}

添加一个参数“email”以获取当前用户的电子邮件。我认为SDK版本4.9中的“字段”参数对于获取用户电子邮件是必需的。(但我没有检查以前的SDK版本)


添加一个参数“email”以获取当前用户的电子邮件。我认为SDK版本4.9中的“字段”参数对于获取用户电子邮件是必需的。(但我没有检查以前的SDK版本)


让用户知道您请求了电子邮件的权限

 let requestMe:FBSDKGraphRequest = FBSDKGraphRequest.init(graphPath: "/me", parameters: ["fields": "id,email, first_name, last_name, gender, picture"])


    let connection : FBSDKGraphRequestConnection = FBSDKGraphRequestConnection()



            connection.add(requestMe, completionHandler: { (con, results, error) in

                //access_token

                if ((error) == nil)

                {


                    let dic = results as! NSDictionary

                    let email = (dic.value(forKey: "email"))




                }
                else

                {


                }

            })


            connection.start()

让用户知道您请求了电子邮件的权限

 let requestMe:FBSDKGraphRequest = FBSDKGraphRequest.init(graphPath: "/me", parameters: ["fields": "id,email, first_name, last_name, gender, picture"])


    let connection : FBSDKGraphRequestConnection = FBSDKGraphRequestConnection()



            connection.add(requestMe, completionHandler: { (con, results, error) in

                //access_token

                if ((error) == nil)

                {


                    let dic = results as! NSDictionary

                    let email = (dic.value(forKey: "email"))




                }
                else

                {


                }

            })


            connection.start()