iOSでのFirebase Google Login
インストール手順と、このプラグインの完全なMarkdownガイドを含むセットアッププロンプトをコピーします。
はじめに
セクション「はじめに」このガイドでは、iOSでGoogle Sign-InをFirebase Authenticationと連携させる方法を解説します。すでに以下を完了していることを前提としています。 Firebase の Google 設定全般.
セットアップ手順
セクション「セットアップ手順」-
プロジェクトの概要は、こちらから確認できます: console.cloud.google.com
-
次の
Add appボタンをクリックします
-
選択します
iOS
-
フォームの最初の項目を入力します
- 以下を入力してください
Apple bundle ID- アプリのXcodeを開きます
npx cap open ios - ダブルクリックして
App
- 以下の項目を確認してください
Targets -> App
- 以下を探します
Bundle Identifier
- 以下をコピー
Bundle IdentifierをコピーしてFirebaseコンソールに貼り付けます
- アプリのXcodeを開きます
- 次の
Register appボタンをクリックします
- 以下を入力してください
-
スキップ
Download config fileステップ
-
スキップ
Add firebase SDKステップ
-
スキップ
Add initialization codeステップ
-
次の
Continue to consoleボタンをクリックします
-
iOSクライアントIDを取得してください
YOUR_DOT_REVERSED_IOS_CLIENT_ID-
Google Cloud Consoleへ移動: console.cloud.google.com
-
プロジェクトを探す
- プロジェクトセレクターをクリックします
- Firebaseプロジェクトの正確な名前でプロジェクトを検索し、クリックしてください。私の場合は、
sociallogin-tutorial-app.
- プロジェクトセレクターをクリックします
-
検索バーを開き、以下を開きます:
credentials- 検索バーを開く
- を検索し、
credentials次をクリックします:APIs and Services該当の項目(スクリーンショットの番号2)
- 検索バーを開く
-
次の
iOS client for [YOUR_APP_ID] (auto created by Google Service)1つです。私の場合は、こちらです:sociallogin-tutorial-app.
-
以下をコピー
Client IDおよびiOS URL scheme。これらはそれぞれあなたのiOSClientIdとYOUR_DOT_REVERSED_IOS_CLIENT_ID.
-
-
WebクライアントIDを取得
- Firebase consoleに戻り、以下へ移動してください
Build->Authentication
- 次の
Sign-in methodボタンをクリックします
- 次の
Googleプロバイダーを有効にする
- 次の
Web SDK configurationボタンをクリックします
- 以下をコピー
Web client ID. これがwebClientIdのinitializeプラグインのメソッドになります。
- Firebase consoleに戻り、以下へ移動してください
-
アプリの Info.plist を修正します
-
Xcode を開き、
Info.plistファイル
-
このファイルを右クリックして、ソース code として開きます
-
ファイルの最下部に
Plist次のような</dict>タグ
-
以下のフラグメントを、閉じタグの直前に挿入してください
</dict>タグ
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string></array></dict></array><key>GIDClientID</key><string>YOUR_IOS_CLIENT_ID.apps.googleusercontent.com</string> -
次の値を
YOUR_DOT_REVERSED_IOS_CLIENT_IDステップ 9 でコピーした値(iOS URL scheme)に変更します
-
-
を
YOUR_IOS_CLIENT_IDステップ9でコピーしたiOS Client IDに変更します -
ファイルを保存してください
Command + S -
次を変更します:
AppDelegate.swift-
AppDelegateを開きます
-
挿入
import GoogleSignInファイルの先頭に
-
〜を探します
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])関数
-
関数を次のように修正します
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool {// Called when the app was launched with a url. Feel free to add additional processing here,// but if you want the App API to support tracking app url opens, make sure to keep this callvar handled: Boolhandled = GIDSignIn.sharedInstance.handle(url)if handled {return true}return ApplicationDelegateProxy.shared.application(app, open: url, options: options)}
-
ファイルを保存してください
Command + S
-
-
アプリでGoogleログインを使用する
これで、アプリでGoogleログインを使用する準備が整いました。 以下の authUtils.ts Googleで認証するサンプルアプリのファイルです。
初回サインイン時に、Firebase Authにユーザーが自動作成されます。
トラブルシューティング
「トラブルシューティング」セクション認証がハングしたり失敗したりする場合:
- 次を確認してください:
idTokenaudienceがFirebaseのWebクライアントIDと一致していること - Firebase ConsoleでGoogle Sign-Inが有効であることを確認してください
- Info.plistに正しいURL schemesとGIDClientIDが設定されていることを確認してください。
- 確認
iOSServerClientIdWebクライアントIDと一致していること - 以下を確認してください: サンプルアプリ code 参考用
iOSでのFirebase Google Loginの続き
「iOSでのFirebase Google Loginの続き」というセクション使用している場合 iOSでのFirebase Google Login 認証とアカウントフローを計画するには、これを次と連携させてください @capgo/capacitor-social-login の使用 「@capgo/capacitor-social-login の使用」のネイティブ機能のために、 @capgo/capacitor-social-login @capgo/capacitor-social-login の実装の詳細については、 @capgo/capacitor-passkey @capgo/capacitor-passkey の実装詳細については、 @capgo/capacitor-native-biometric @capgo/capacitor-native-biometric の実装の詳細、および 2要素認証 二要素認証の実装の詳細については。