2016-10-13 5 views
0

У меня есть проблема с входом в twitter на iOS. Если пользователь настройки учетной записи в настройках приложения, я получаю следующее сообщение об ошибке:Войти с Twitter на iOS

[TwitterKit] did encounter error with message "User's system account credentials are invalid.": Error Domain=TWTRLogInErrorDomain Code=7 "The system account credentials are no longer valid and will need to be updated in the Settings app." UserInfo={NSLocalizedDescription=The system account credentials are no longer valid and will need to be updated in the Settings app., NSLocalizedRecoverySuggestion=The user has been prompted to visit the Settings app.}

И действительные учетные данные, я дважды проверьте. Если в приложении «Настройки» нет аккаунта, мой логин будет проходить так, как ожидалось. Метод, который я называю это:

Twitter.sharedInstance().logInWithCompletion {(session, error) -> Void in 
+0

Вы можете использовать FHSTwitterEngine для твиттере Войти –

+0

@Jecky спасибо. Я решил это, используя другой метод. – Nemanja

ответ

0

решить мою проблему с помощью метода:

Twitter.sharedInstance().logInWithMethods(TWTRLoginMethod.WebBased, completion: {(session, error) -> Void in 

Но все-таки думаю, что другой метод должен работать.

1

Я думаю, что следующий метод также должен работать.

Twitter.sharedInstance().logIn(withCompletion: {(session: TWTRSession, error: Error) -> Void in 
    if session { 
     print("@\(session.userName()) logged in! (\(session.userID()))") 
    } 
    else { 
     print("error: \(error!.localizedDescription)") 
    } 
}) 

It takes the account credentials from the Settings Twitter app.

Больше смотреть в: - AppDelegate.m

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]) -> Bool { 
    //Twitter 
    Twitter.sharedInstance().start(with: kTwitterConsumerKey, consumerSecret: kTwitterConsumerSecret) 
    Fabric.with([Twitter.sharedInstance()]) 
    return true 
} 
  • Info.plist

enter image description here

+0

Это не работает для меня, это то же самое, что и в моем вопросе. – Nemanja

+0

Да, похоже, он такой же, но он хорошо работает с sdk, которые установлены с использованием «ткани». Как вы добавили рамки twitter? –

+0

Да, я добавил твиттеркит и комплект ткани, используя стручки и установил настройки щебета, проверенные с помощью plist и программно. – Nemanja

0
Twitter.sharedInstance().logIn { session, error in 
     if (session != nil) 
     { 
      print("signed in as \(session!.userName)"); 
      let client = TWTRAPIClient.withCurrentUser() 
      let request = client.urlRequest(withMethod: "GET", 
       url: "https://api.twitter.com/1.1/account/verify_credentials.json", 
       parameters: ["include_email": "true", "skip_status": "true"], 
       error: nil) 
      client.sendTwitterRequest(request) 
      { response, data, connectionError in 
       print(response) 
      } 
     } 
     else 
     { 
      print("error: \(error!.localizedDescription)"); 
     } 
     } 
    } 

это помогает мне в swift3

Смежные вопросы