1

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

如果用户设置了多个 Twitter 系统帐户,则应用程序会在验证时要求帐户选择。成功登录后,我使用调用https://api.twitter.com/1.1/account/verify_credentials.json?include_email=true从 Twitter 检索用户详细信息

问题是在上述情况下,twitter API 不返回电子邮件地址。当系统帐户未设置时,我得到电子邮件地址,即用户通过 Web 登录登录。我不希望用户手动输入电子邮件地址。

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

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

错误 - 可选(错误域=TWTRErrorDomain Code=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 身份验证?

谢谢阿什什

4

1 回答 1

3

转到 Twitter 应用程序控制台并在 Additional Permissions 中勾选电子邮件权限,如下图所示

在此处输入图像描述

于 2017-09-14T14:09:45.997 回答