- この記事は、Google Sign-In for Android に関する記事を和訳したものです。
- 原文: Try Sign-In for Android
- 元記事のライセンスは CC-BYで、この和訳記事のライセンスは CC-BYです。
- 自己責任でご利用ください。
- 和訳した時期は 2019年6月ころです。
サインインの仕組みを確認するために、あるいは、あなたの既存のアプリにサインインを追加するために、私たちの Androidサンプルアプリを使用してください。
必須: Android Studioおよび Google Play Servicesの最新バージョン。
プロジェクトを取得する
もしこれが Googleサービスのサンプルを初めて使用するのであれば、google-servicesリポジトリをチェックアウトします。
$ git clone https://github.com/googlesamples/google-services.git
Android Studioを開きます。
File > Openを選択し、google-services
リポジトリをクローンした場所を参照して、google-services/android/signin
を開きます。
Google APIプロジェクトを構成する
サンプルを使用するには、あなたのプロジェクトのセットアップを完了するための、幾つかの追加の情報を提供する必要があります。
以下のボタンをクリックし、促されたとき、パッケージ名 com
を指定します。
あなたの署名証明書の SHA-1 ハッシュを提供する必要もあるでしょう。
詳細については、Authenticating Your Clientを参照してください。
サンプルの IdTokenActivity
および ServerAuthCodeActivity
の例は、OAuth 2.0ウェブクライアント IDを指定することを必要とします。
実際のアプリでは、このクライアント IDは、あなたのアプリのバックエンドサーバを表すでしょう。
この目的のためのクライアント IDは、上記のプロジェクトを構成したときに作成されました。
Google API Consoleを開くことによって、この値を見つけます:
Google API Console
あなたのウェブサーバのクライアント IDは、Web client (Auto-created for Google Sign-in)の隣に表示されます。
あなたのプロジェクトの strings.xml
ファイルに、クライアント IDをコピーアンドペーストします。
<string name="server_client_id">YOUR_SERVER_CLIENT_ID</string>
サンプルを実行する
今、サンプルをビルドし、それを Android Studioから実行する準備が整いました。
サンプルをビルドし、実行ボタンをクリックし、Google Playサービスの最新バージョンを伴う、接続された端末あるいはエミュレータを選択します。
使い方
アプリケーションは、それが必要なサインインのオプションを指定して、GoogleSignInClient
を構築します。
それから、サインインボタンがクリックされたとき、アプリケーションはサインインのインテントを開始します、それは、ユーザに Googleアカウントを用いてサインインするよう促します。
// Configure sign-in to request the user's ID, email address, and basic // profile. ID and basic profile are included in DEFAULT_SIGN_IN. GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestEmail() .build();
// Build a GoogleSignInClient with the options specified by gso. mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
private void signIn() { Intent signInIntent = mGoogleSignInClient.getSignInIntent(); startActivityForResult(signInIntent, RC_SIGN_IN); }
次のステップ
もし独自のアプリにて Googleサインインを実装する方法を確認したければ、私たちの実装ガイドをご覧ください。
グッドエクスペリエンスを持ちましたか? トラブルに直面しましたか? Let us know!