#java #android #google-api #google-play-services
Вопрос:
1: Окружающая среда
- Устройство: ONEPLUS 6
- Версия ОС: ANDROID 10
- Версия SDK: 29
- [Android] Версия сервисов Google Play: 19.2.0
2: Проблема:
Шаги по воспроизведению:
- Знак намерения = Авторизация.GoogleSignInApi.getSignInIntent(gApiClient);
- startActivityForResult(signInIntent, REQUEST_ACCOUNT_PICKER);
Наблюдаемые Результаты:
- Экран входа в систему продолжает загружаться бесконечно долго после выбора учетной записи
Ожидаемые Результаты:
- onActivityResult должен быть вызван с данными для входа
Соответствующий Код:
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(Constant.serverclientid) // required to get accesstoken
.requestScopes(new Scope(GmailScopes.MAIL_GOOGLE_COM))
.requestEmail()
.build();
GoogleApiClient gApiClient = new GoogleApiClient.Builder(getApplicationContext())
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.build();
ConnectionResult c = gApiClient.blockingConnect();
if (c.isSuccess() amp;amp; gApiClient.isConnected()) {
Log.e(TAG,"connectionResult = success");
gApiClient.clearDefaultAccountAndReconnect().await();
}
else
{
Log.e(TAG,"connectionResult is failure");
}
GoogleSignInClient mGoogleSignInClient = GoogleSignIn.getClient(getApplicationContext(), gso);
mGoogleSignInClient.revokeAccess();
// Intent signInIntent = mGoogleSignInClient.getSignInIntent();
Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(gApiClient);
runOnUiThread(new Runnable() {
@Override
public void run() {
Log.d(TAG,"request account picker");
Aloading_spinner.setVisibility( View.GONE );
startActivityForResult(signInIntent, REQUEST_ACCOUNT_PICKER);
}
});
3: ЖУРНАЛ
E/Auth: [GoogleAccountDataServiceImpl] getToken() -> NEED_REMOTE_CONSENT. App: _packagename_, Service: oauth2:email https://mail.google.com/ openid profile
Комментарии:
1. Вы нашли ответ на этот вопрос? У меня точно такая же проблема