Как заставить GoogleApiClient запрашивать пользовательский интерфейс выбора аккаунта при каждом вызове connect?
Всякий раз, когда я запускаю код для самогопервый раз в моем первом цикле запуска приложения
GoogleApiClient mGoogleApiClient = new GoogleApiClient.Builder(context)
.addApi(Drive.API)
.addScope(Drive.SCOPE_APPFOLDER) // required for App Folder sample
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
mGoogleApiClient.connect();
Я вижу следующий выбор аккаунта.
Однако, если предыдущее подключение прошло успешно, и я снова запускаю тот же код дляпервый раз во втором цикле запуска приложения.
Выбор учетной записи не появится снова.GoogleApiClient
будет использовать имя учетной записи, я выбираю в предыдущем цикле запуска приложения.
Я хочу, чтобы мой аккаунт каждый раз появлялся.
Я наткнулсяКак очистить учетную запись и учетные данные GoogleApiClient по умолчанию
Предлагаемое решение не работает для моего случая.
mGoogleApiClient.clearDefaultAccountAndReconnect()
Если я был подключен к моему предыдущему циклу приложения, и я вызываю приведенный выше код впервые в моем текущем цикле приложения, я получу следующее исключение.
java.lang.IllegalStateException: GoogleApiClient is not connected yet.
at com.google.android.gms.common.internal.zzx.zza(Unknown Source)
at com.google.android.gms.common.api.internal.zzj.clearDefaultAccountAndReconnect(Unknown Source)
Следующий код также не будет работать.
if (mGoogleApiClient.isConnected()) {
// No chance to execute this code, if you run this code during app launch.
mGoogleApiClient.clearDefaultAccountAndReconnect();
} else {
// No account chooser will pop up if you had been connected in previous app life cycle
mGoogleApiClient.connect();
}
Могу ли я узнать, как заставить GoogleApiClient запрашивать пользовательский интерфейс выбора аккаунта при каждом вызове connect?