При входе в Google (silentSignIn) не удается получить идентификационный токен через час после первоначального входа. - PullRequest
0 голосов
/ 15 октября 2018

Я уже давно интегрировал рабочий процесс входа в Google в мои приложения, и все работало нормально примерно до 2 месяцев назад.Пользователи стали жаловаться на то, что им приходится каждый раз входить в систему.

Что происходит: я все еще могу войти в свои приложения с опцией "requestIdToken".Я получаю токен и могу проверить его на своем сервере.Когда я закрываю приложение и запускаю его снова, я получаю тот же токен с вызовом silentSignIn.Все идет нормально.Но когда я запускаю свое приложение через час после первоначального входа в систему, я получаю код ошибки 4 (что означает, что я не вошел в систему).

Я много пробовал и перевернул свой код вверх ногами, ноЯ не могу заставить его работать снова.Когда я пытаюсь установить silentSignIn без requestIdToken, я получаю успешный вход.Таким образом, вход в систему, кажется, работает нормально, но почему-то я не получаю новый токен после того, как истек первоначальный токен.Я даже пытался создать новый Web-Client-Id на консоли API, но ничего не изменилось.

Вот мои простые варианты, а остальное точно так же, как в примерах Google:

    GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
            .requestIdToken(getString(R.string.server_client_id))
            .build();
    mGoogleSignInClient = GoogleSignIn.getClient(this, gso);

Я использую com.google.android.gms: play-services-auth: 16.0.1

Есть ли что-то важное, что я должен настроить в API-консоли для своего Web-Client-ID или любого другогомагические разрешения, о которых я не знаю.

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