ユーザをサインアウトさせ、アカウントを切断する



  • この記事は、Google Sign-In for Android に関する記事を和訳したものです。
  • 原文: Signing Out Users and Disconnecting Accounts
  • 元記事のライセンスは CC-BYで、この和訳記事のライセンスは CC-BYです。
  • 自己責任でご利用ください。
  • 和訳した時期は 2019年6月ころです。

あなたのユーザがあなたのアプリからサインアウトすること、および、あなたのアプリから完全に彼らのアカウントを切断することができるようにします。

ユーザをサインアウトさせる

あなたのアプリにサインアウトボタンを追加するには、まず、あなたのアプリにて、あなたのサインアウトボタンとして機能するためのボタンを作成します。 それから、ボタンに onClickListenerをアタッチし、signOutを呼び出すために onClickメソッドを構成します。

@Override
public void onClick(View v) {
    switch (v.getId()) {
        // ...
        case R.id.button_sign_out:
            signOut();
            break;
        // ...
    }
}
private void signOut() {
    mGoogleSignInClient.signOut()
            .addOnCompleteListener(this, new OnCompleteListener<Void>() {
                @Override
                public void onComplete(@NonNull Task<Void> task) {
                    // ...
                }
            });
}

このコードは、アプリに接続しているアカウントをクリアします。 再びサインインするには、ユーザは彼らのアカウントを再び選択しなければなりません。

アカウントを切断する

Googleを用いてサインインしたユーザに、彼らの Googleアカウントをあなたのアプリから切断する機能を提供することを強くお勧めします。 もしユーザが彼らのアカウントを削除したならば、あなたのアプリが Google APIから取得した情報を削除しなければなりません。

次のコードは、revokeAccessメソッドを呼び出す簡単な例を示しています:

private void revokeAccess() {
    mGoogleSignInClient.revokeAccess()
            .addOnCompleteListener(this, new OnCompleteListener<Void>() {
                @Override
                public void onComplete(@NonNull Task<Void> task) {
                    // ...
                }
            });
}

完了リスナにて、イベントを受信し、あなたのアプリあるいはあなたのアプリケーション内の任意の適切なロジックをトリガさせることができます。