Google Sign-In

Google Sign-In

はじめに

社内のサービスにGoogleSignIn実装したので、軽くメモ用に書いてみた。

前提条件

Google Play Storeを含むAndroid 2.3以上

実装準備

  • google-services.jsonをダウンロード、appの直下に置く
  • Google Play Servicesを追加する
  • com.android.applicationプラグインを適用

OAuth 2.0 clientIDを作成する

ここに書いたとおり実行すれば問題ないはず : start-integrating

■ Step 1:新しい認証情報を作成

■ Step 2:クライアント情報を記入

※ 本番環境用の認証情報ならRelease用のkey_storeを使ったフィンガープリントではないとだめ
※ 複数のテスト環境ならそれぞれの環境に対応する認証情報を作る必要があり、パッケージ名をちゃんと記入しないとだめ。
例: jp.kanlin.test.st1.dev

実装

■ Googleサインヘルパークラス実装
ViewのOnClickListenerをimplementするGoogleSignInHelperクラスを実装する

■ヘルパークラスを使ってGoogleサインインを行う
使用したいクラスでインスタンス作って、利用する

※ Googleサインインの前提はGooglePlayServicesが端末に入ってることなので、チェックしたほうが良い

handleGoogleSignInResultメソッドの中にAPI通信入れて、ログイン処理を行う

ハマったこと

API側で認証失敗したら、再度GoogleSignInを起動して、他のアカウントが選択できるように、Intentを飛ばす前に既にGoogleApiClientに接続かつAPI認証失敗という条件でチェックを入れる必要がある

終わりに

実際にできたのはこんな感じ

Vote (5 / 1)

Leave a Reply

Your email address will not be published. Required fields are marked *