アプリの認証エクスペリエンスを効率化し、開発プラクティスを将来にわたって維持するため、従来の Google Sign-In for Android から Android Credential Manager に移行します。Android 向け Google ログイン(com.google.android.gms:play-services-auth の一部)は非推奨となり、今後のリリースで Google Play 開発者サービス Auth SDK から削除されます。
このガイドでは、次の領域について説明します。
- Credential Manager API に移行するメリット
- 以前の SDK と Credential Manager の実装の違い
Credential Manager API のメリット
認証情報マネージャーには、以前の Google ログイン(Android 向け)と比較して、次のようなメリットがあります。認証情報マネージャーは、最新の機能とプラクティスをサポートする、合理化された Unified API を提供すると同時に、ユーザーの認証エクスペリエンスを改善します。Credential Manager の詳細については、Credential Manager の機能とブログ投稿をご覧ください。
「Google でログイン」の実装の主なメリットは次のとおりです。
- Unified API: パスキー、パスワード、フェデレーション ログイン メカニズムなど、すべてのログイン方法に対して単一の統合ポイントを提供します。
- 「Google でログイン」ボタンのサポート: 標準ボタンを完全にサポートし、既存の UI フローに直接ドロップできます。
- シームレスなログイン機能: ユーザーに Google アカウントでのログインを直接促し、オンボーディング時の手間を軽減します。
- 将来を見据えたセキュリティ: パスワードレス認証の新しい標準であるパスキーのサポートが組み込まれています。
アプローチの違い
「Google でログイン」の以前の認証情報マネージャーと更新された認証情報マネージャーの違いは次のとおりです。
- 以前に
silentSignInで以前の Google ログインを使用していた場合、自動ログインの認証情報マネージャーの動作は、ユーザー エクスペリエンスが若干異なります。- 認証情報マネージャーでは、
filterByAuthorizedAccountsをtrueに、setAutoSelectEnabledをtrueに設定して認証をリクエストします。ユーザーの操作を必要としないボトムシートが短時間表示されます。 - 結果は
silentSignInのようになります。
- 認証情報マネージャーでは、
- 認証と認可の両方を 1 回の API 呼び出しで処理できた以前の Google ログイン SDK とは異なり、更新された Credential Manager の実装では、これらは別個のアクションとして扱われます。
- 認証: 認証情報マネージャーを使用して、ユーザーをアプリにログインさせます。
- 認可: Google ドライブへのアクセスなど、特定のアクションには AuthorizationClient API を使用します。承認について詳しくは、ユーザーデータへのアクセスを承認するをご覧ください。この分離により、ユーザーフローをユーザーの意図にマッピングできます。ユーザーは Google アカウントを使用して登録またはログインできます。アプリで必要なときに、ログイン時だけでなく、承認権限を個別にリクエストできます。