GoogleSignInAccountからメールアドレスの取得


GoogleSignInAccountからメールアドレスの取得の前提として、以下の記事をご覧ください。

AndroidからGoogleドライブへのファイルコピー

 

GoogleSignInAccount には、getEmail() というメソッドがあり、接続に使用したGoogleアカウントのメールアドレスが取得できるのですが、常時nullが返ってきます。

調べたところ、サインイン時のオプションに requestEmail() を付けないとダメだったようです。

BaseDemoActivity 内の GoogleSignInOptions 指定部分です。


GoogleSignInOptions signInOptions =
        new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestScopes(Drive.SCOPE_FILE)
                .requestScopes(Drive.SCOPE_APPFOLDER)
                .requestEmail()
                .build();

 

BaseDemoActivity から派生した Activity でのメールアドレス取得処理です。


String email = getGoogleSignInAccount().getEmail();

すでに接続済みの場合は、一旦サインアウトしてからサインインしなおす必要があります。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください