🔑
SwiftUI × Firebase Authで認証機能を追加する ~準備編~(1/2)
1. はじめに
個人開発しているiOSアプリに認証機能を追加する機会があったので、手順を残しておくことにしました。
2. 手順
今回は「メール認証」と「Google認証」の2つを追加することを前提とし、手順を記載します。
2.1. Firebase環境での準備
以下のリンクからFirebaseプロジェクトを作成します。
2.1.1. プロジェクトの作成
Firebaseプロジェクトを作成する
をクリックする
リンク先から
プロジェクト名
に任意のプロジェクト名を入力する
デフォルト設定
のままにする
Geminiの有効/無効設定に関しては、
デフォルト設定
のままにする
Googleアナリティクスに関しても、
任意のアカウント
を選択する
Googleアナリティクスアカウントは2.1.2. アプリの登録
今回はiOSアプリに対して機能追加するため、iOSアプリを登録します。
iOS+
をタップする
ホーム画面から
AppleバンドルID
を入力する
設定ファイル
をダウンロードし、Xcodeプロジェクトのルートフォルダに追加する
「Firebase SDKの追加」と「初期コードの追加」は飛ばして、手順を終了する
2.1.3. Firebase Authのセットアップ
※今回はメール認証/Google認証の2つをセットアップします。
Authenticationの追加
メール認証のセットアップ
メール/パスワード
をクリックする
設定を有効
にし保存
する
Google認証のセットアップ
新しいプロバイダを追加
をクリックする
Google
をクリックする
プロジェクトの公開名
とプロジェクトのサポートメール
を入力する
メール認証/Google認証の2つのセットアップが完了していることを確認する
2.2. Xcode環境での準備
Xcodeプロジェクトにライブラリを追加します。
2.2.1. メール認証用のライブラリ追加
以下のリンクを参考にメール認証用のライブラリを追加します。
Appleプラットフォームでパスワードベースのアカウントを使用してFirebase認証を行う
2.2.2. Google認証用のライブラリ追加
以下のリンクを参考にGoogle認証用のライブラリを追加します。
AppleプラットフォームでGoogleログインを使用して認証する
2.2.3 手順
ライブラリを追加手順は「メール認証」「Google認証」共に同じ手順になるので、以下にまとめて記載します。
Add Package Dependencies
をクリックする
Xcodeプロジェクトにて検索窓に以下2種類のリポジトリURLを入れてライブラリを追加する
Firebase AppleプラットフォームSDKリポジトリ
https://github.com/firebase/firebase-ios-sdk.git
GoogleログインSDKリポジトリ
https://github.com/google/GoogleSignIn-iOS
※1つずつ追加する必要があります。
Info.plistに「GIDClientID」と「CFBundleURLTypes」を追加する
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- クライアントID -->
<key>GIDClientID</key>
<string>YOUR-CLIENT-ID.apps.googleusercontent.com</string>
<!-- Google認証のためのURLスキーム設定 -->
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>com.googleusercontent.apps.YOUR-CLIENT-ID</string>
</array>
</dict>
</array>
</dict>
</plist>
実装編に続く
Discussion