如果在iOS上使用系统帐户进行​​身份验证,则无法检索Twitter电子邮件

时间:2017-09-13 19:04:53

标签: ios swift parse-platform twitter-oauth parseui

我正在使用ParseUI在我的iOS应用程序中实现Facebook和Twitter登录。

如果用户设置了多个Twitter系统帐户,那么应用程序会要求帐户在进行身份验证时选择。成功登录后,我将通过调用https://api.twitter.com/1.1/account/verify_credentials.json?include_email=true

从Twitter中检索用户详细信息

问题是在上面的场景中,twitter API没有返回电子邮件地址。我没有设置系统帐户时收到电子邮件地址,即用户通过网络登录登录。 我不希望用户手动输入电子邮件地址。

我已在Twitter应用设置中将应用列入白名单。

我试着下面的代码。但是,我得到错误:

错误 - 可选(错误域= TWTRErrorDomain代码= 3“此用户没有电子邮件地址。”UserInfo = {NSLocalizedDescription =此用户没有电子邮件地址。})

let client = TWTRAPIClient.withCurrentUser()

client.requestEmail { email, error in
                 if (email != nil) {
                    print("email address is - \(String(describing: email))");
                 } else {        
                    print("Error - \(error)")
                 }
        }

有没有办法强制ParseUI通过浏览器跳过系统帐户选择进行Twitter身份验证?

由于 阿希什

1 个答案:

答案 0 :(得分:2)

  

转到Twitter应用控制台并选中标记电子邮件权限   附加权限,如下图所示

enter image description here