gpt4 book ai didi

iOS Facebook SDK : FBSDKGraphRequest not getting email, 尽管获得许可

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:11 25 4
gpt4 key购买 nike

我正在使用 FB SDK v4.4(最新)并且认为我已经避免了其他问题中的陷阱。

我正在建立一个登录:

       FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login logInWithReadPermissions:@[@"email"]
handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
if (error) {
// Process error
} else {
[self facebookGetUserProfileWithCompletion:completion];
}
}];

我特别要求“电子邮件”(需要应用审查的扩展权限)。

我的应用程序已通过审核,用户在收到提示时授予电子邮件权限。添加 [result.grantedPermissions containsObject:@"email"] 检查处理程序返回 TRUE。

一旦用户响应了 UI,代码就会从 Graph API 获取用户配置文件:

[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{@"fields" : @"id,email,first_name,last_name,link,locale"}]  
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {

if (!error) {
NSString *email = [result objectForKey:@"email"] ;
NSString *first_name = [result objectForKey:@"first_name"] ;
//etc...
}

此时,我只有五个参数;我缺少电子邮件。使用 Graph API Explorer,我得到了完整的六个。用户确实有一个在 FB 注册的电子邮件地址。

为什么没有电子邮件???!!!

最佳答案

我几乎已经解决了我的问题。他们在这里:

1) @cbroe 提出了获取 token 并使用 Graph API Explorer 进行调试的最有用的建议。那里有很多帮助。

2) 在大多数情况下,FB 正在将他们的 DOB 字段转移到 age_range。似乎我现有的应用程序仍会返回 DOB,但新版本不会未经许可。我找不到这方面的文档,但如果我使用 age_range,我很好。

3) 我的 FB 测试帐户中的电子邮件地址出现了一个奇怪的问题。这是固定的,我再次收到电子邮件没问题。同样,Graph API 测试对解决这个问题最有帮助。再次感谢@cbroe!

关于iOS Facebook SDK : FBSDKGraphRequest not getting email, 尽管获得许可,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31641630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com