Я уже давно интегрировал рабочий процесс входа в 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 или любого другогомагические разрешения, о которых я не знаю.