Отменить доступ к диску через сервисы Google Play

#android #google-play-services #google-drive-android-api

#Android #google-play-services #google-drive-android-api

Вопрос:

Есть ли способ отменить доступ к диску, предоставленный через сервисы Google Play?

Ссылаясь на эту статью:https://developer.android.com/google/auth/api-client.html

Я предоставил доступ к g drive из своего приложения следующим образом:

 mGoogleApiClient = new GoogleApiClient.Builder(this)
.addApi(Drive.API)
.addScope(Drive.SCOPE_FILE)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
  

Мой вопрос в том, есть ли простой способ отменить доступ к g drive

т.е. без необходимости выполнения credential.getToken() и выполнения http-вызова https://accounts.google.com/o/oauth2/revoke ?токен=

Я ищу что-то вроде диска.DriveApi.revokeAccessAndDisconnect();

Я знаю, что есть один для g plus, но я не могу найти его для g drive. http://developer.android.com/reference/com/google/android/gms/plus/Account.html

Ответ №1:

Да, существует способ отмены доступа к Google Диску.

 GoogleSignInClient googleSignInClient = buildGoogleSignInClient();
googleSignInClient.revokeAccess().addOnCompleteListener(onCompleteListener);
  

где

 private GoogleSignInClient buildGoogleSignInClient() {
    GoogleSignInOptions signInOptions =
            new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                    .requestScopes(Drive.SCOPE_FILE)
                    .build();
    return GoogleSignIn.getClient(this, signInOptions);
}
  

Для получения дополнительной информации вы можете проверить эту ссылку