我甚至将FacebookSDK for iOS从v3.6升级到v3.8而没有任何运气.直到几周前一切正常,但现在还没有.它只是电子邮件,所有其他属性,即dob回来就好了. Facebook不断改变他们的权限系统,但我不知道最近可能导致这种情况的变化.任何指针都将非常感激.
顺便说一句,我正在尝试使用我自己的FB帐户进行身份验证,该帐户有一个与之关联的有效电子邮件,我最近也没有更改任何隐私设置.
还尝试从我的Facebook隐私设置中删除该应用程序并重新授权但仍然没有运气.这是代码:
[FBSession openActiveSessionWithReadPermissions:@[@"user_about_me",@"user_location",@"user_birthday",@"email"] allowLoginUI:YES completionHandler:^(FBSession *session,FBSessionState status,NSError *error) { switch (status) { case FBSessionStateOpen: { [[FBRequest requestForMe] startWithCompletionHandler:^(FBRequestConnection *connection,NSDictionary<FBGraphUser> *user,NSError *error) { NSLog(@"User Data: %@",user); //no email in the Json Nsstring *email = user[@"email"]; //obvIoUsly returns nil //rest of the code }]; } break; case FBSessionStateClosed: case FBSessionStateClosedLoginFailed: [FBSession.activeSession closeAndClearTokeninformation]; break; default: break; }}];
Facebook App权限页面的屏幕截图,清楚地显示我已正确配置它:
这是我在API回调中返回的用户JsON(我删除了我的个人信息).
{ bio = "My Bio"; birthday = "01/01/1900"; "first_name" = FN; gender = male; ID = 00000000; "last_name" = LN; link = "https://www.facebook.com/FBname"; locale = "en"; location = { ID = 11111111111111111; name = "City name"; }; name = "FN LN"; quotes = ""; timezone = "0"; "updated_time" = "2000-00-07T00:00:21+0000"; username = USERname; verifIEd = 1;}解决方法 事实证明,如果与该Facebook帐户关联的主电子邮件已被停用,禁用或删除,则当您拨打图表时,Facebook不会返回用户电子邮件.
如果您长时间不访问您的电子邮件地址,可能会发生这种情况. Facebook可能会在他们发往您主要地址的电子邮件开始反d时将其弄清楚.
让它再次运作的步骤:
>请确保您能够登录到您的电子邮件帐户并且Facebook电子邮件不会被反d.>登录Facebook并将您的主电子邮件地址更改为某些其他邮箱.> Facebook将向您的新电子邮件地址发送验证邮件,打开此电子邮件并单击验证链接.>重新登录Facebook并再次将主电子邮件更改为以前的邮件地址.> Facebook将向此电子邮件地址发送验证邮件,请打开它并单击它以验证您的电子邮件.>等待几个小时再试一次中提琴,你的电子邮件将会发送开始在Json下来.
总结以上是内存溢出为你收集整理的ios – Facebook Graph API停止发送用户电子邮件全部内容,希望文章能够帮你解决ios – Facebook Graph API停止发送用户电子邮件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)