android - проблема с аутентификацией в firebase, возвращение пользователя, которому не хватает маркера Facebook - PullRequest
0 голосов
/ 27 марта 2019

У меня проблема с возвращением пользователей в моем приложении, которые используют поток Facebook для аутентификации. приложение работает нормально до тех пор, пока пользователь не уйдет примерно на 48+ часов, но до сих пор точно не может понять.

это шаги:

  1. Пользователь впервые проходит проверку подлинности с помощью провайдера Facebook из Firebase SDK.
  2. все идет по плану, приложение работает нормально.
  3. пользователь покидает приложение и, скажем, возвращается через 2 дня после
  4. при запуске приложения я проверяю, что пользователь все еще аутентифицирован с использованием
  5. пользователь проходит проверку (user! = Null, все еще аутентифицирован) и входит в приложение
  6. пользователь совершает действие, для которого требуется Facebook SDK, поэтому до этого я пытаюсь получить токен доступа, но он нулевой, и я не могу проверить его разрешения. проблема в том, что это именно тот код, который использовался для получения действительного токена 2 дня назад.

вот как я делаю самодостаточный статус аутентификации пользователя:

 mAuthListener = new FirebaseAuth.AuthStateListener() {
    @Override
    public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
        if (firebaseAuth.getCurrentUser() == null) {
            startAuthActivity(); 
        } else {
            checkUserFinishSetup(firebaseAuth.getCurrentUser());
            //at the end of checkUserFinishSetup new intent created 
            //and the user redirect to MainActivity
        }
    }
};

и это строка, которая вызывает у меня проблемы, когда пользователь должен предпринять действия, требующие действительный токен доступа для Facebook SDK.

AccessToken.getCurrentAccessToken() // return null even though 2 days ago it was valid

Есть ли какая-то встроенная функция, которую нужно вызывать, чтобы обновить токен, предоставленный firebase для пользователей, которые использовали провайдера Facebook \ flow, поэтому у меня будет действительный токен для использования с Facebook SDK?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...