用Twitter登录总是返回错误

时间:2018-07-18 11:34:55

标签: ios swift twitterkit

我尝试用Twitter添加登录名,但是有些方法无法获得响应。每次收到错误消息(获取用户身份验证令牌时出错)。我知道有很多SO帖子都存在此问题,但我无法登录。我也尝试了advance setting,但是没有会话。我还重新生成了用户密钥和Secret,但没有运气。使用Swift 3.0

这是我的代码

TWTRTwitter.sharedInstance().logIn(with: self) { (session, error) in
     if (session != nil) {
     print("signed in as \(session?.userName ?? "")");
            } else {
                print("error: \(error?.localizedDescription ?? "")");
            }
     }
  

info.plist

enter image description here

  

Appdelegate

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        _ = DBSingleton.sharedInstance
        TWTRTwitter.sharedInstance().start(withConsumerKey:TwitterKey.consumerKey, consumerSecret:TwitterKey.consumerSecret)
}

attached log screenshot

更新: 如果我们有应用程序,那么它可以正常工作,但是如果没有,则返回错误。

1 个答案:

答案 0 :(得分:3)

经过大量的研发,我获得了成功。 Twitter已强制要求回调网址。我从这个link

找到了

您需要在twitter仪表板设置的回叫URL中添加twitterkit-xxxxxxxxxxxxxxxx(twitterkit-消费者密钥)。

我使用这种方法来打开safari(确保您添加了safari框架)

TWTRTwitter.sharedInstance().logIn(with: self) { (session, error) in
            if (session != nil) {
                print("signed in as \(session?.userName ?? "")");
            } else {
                print("error: \(error?.localizedDescription ?? "")");
            }
        }