1

Привет Я предоставляю свой фрагмент кода для выхода из учетной записи google. При нажатии кнопки «SignOut» я вызываю эту функцию выхода из системы. Мне удалось войти в аккаунт google успешно. Используя приведенный ниже код, я могу выйти из учетной записи Google, но вам нужно многократно нажать кнопку «Выйти» для выхода из системы. Я думаю, что mGoogleApiClient занимает слишком много времени для подключения и, следовательно, для входа в условие mGoogleApiClient.isConnected().Googleapiclient не отключается

Может кто-нибудь помочь мне выйти из учетной записи google одним нажатием кнопки SignOut?

public void logout(String st) 
{`enter code here` 
    mGoogleApiClient.connect(); 
    if (mGoogleApiClient.isConnected()||mGoogleApiClient.isConnecting()) 
    { 
     if(mGoogleApiClient.isConnected()) 
     { 
      mGoogleApiClient.clearDefaultAccountAndReconnect(); 
      mGoogleApiClient.disconnect(); 
      System.err.println("LOG OUT ^^^^^^^^^^^^^^^^^^^^ SUCESS"); 
      refreshpage(); 
     } 
    } 
} 

public void refreshpage() 
{ 
    Intent intent = new Intent(this, SignInActivity.class); 
    startActivity(intent); 
} 

ответ

0

почему не использовать, как этот

Auth.GoogleSignInApi.signOut(mGoogleApiClient).setResultCallback(
     new ResultCallback<Status>() { 
      @Override 
      public void onResult(Status status) { 
       // ... 
      } 
     }); 
+0

все тот же ... После 5 или 6 щелкает его получения отключен :( – AR5

+0

ответ обновляется, с помощью этого вы можете показать некоторые (прогресс бар)/(кнопка отключения) – Rahul

+0

Для вышеуказанного кода также, когда я попытался без проверки состояния if (mGoogleApiClient.isConnected()), он метал mGoogleApiClient еще не связан с ошибкой. Но когда я снова добавил чек, он вел себя так же. Нужно иметь 5-6 кликов, чтобы заставить его выйти из системы. Я думаю, что у него есть время, чтобы изменить статус mGoogleApiClient от подключения к connec ted – AR5