2016-12-01 3 views
3

Когда пользователь открывает мое приложение, поток Войти выглядит следующим образом:TwitterKit иногда возвращая всухую сессию для существующих пользователей

  1. Начало TwitterKit с Twitter.sharedInstance().start(withConsumerKey: consumerKey, consumerSecret: consumerSecret).
  2. Стартовая ткань с Fabric.with([Crashlytics.self, Twitter.self]).
  3. Проверьте существующий сеанс с Twitter.sharedInstance().sessionStore.session().
  4. Если нет существующего сеанса, разрешите им войти в систему с помощью Twitter.sharedInstance().logIn(withMethods: TWTRLoginMethod.webBasedForceLogin).

У меня проблема с прерывистой ситуацией, когда довольно часто пользователь открывает приложение после того, как он был ранее вошел в систему, и не будет существующего сеанса - он вернет нуль, так что они попросил снова войти в систему. Но затем, если они покинут приложение или отменит новый вход, снова запустите приложение, существующий сеанс будет возвращен, как и ожидалось.

ответ

0

Я думаю, вы должны сохранить сессию saveSession способом, как показано ниже

func saveSession(session: TWTRSession) { 
    TWTRTwitter.sharedInstance().sessionStore.save(session) { (session, error) in 
     print(session) 
     if let error = error { 
      print(error) 
     } 
    } 
}