このリポジトリには、FirebaseAnalytics を除くすべての Apple プラットフォーム Firebase SDK のソース コードが含まれています。
Firebase は、アプリの構築、成長、収益化に役立つツールを備えたアプリ開発プラットフォームです。 Firebase の詳細については、Firebase の公式 Web サイトをご覧ください。
さまざまなインストール方法の詳細については、以下のサブセクションを参照してください。 Swift でアプリを作成するときに最高のエクスペリエンスを得るために、利用可能な場合は、 Swift
サフィックスが付いたライブラリをインストールすることをお勧めします。
標準ポッドのインストール
Swiftパッケージマネージャー
GitHub リポジトリからのインストール
実験カルタゴ
標準ポッドのインストール手順については、https://firebase.google.com/docs/ios/setup を参照してください。
Swift Package Manager サポートの手順は、SwiftPackageManager.md マークダウン ファイルに記載されています。
これらの手順を使用して、他のブランチ、タグ、またはコミットで Firebase リポジトリにアクセスできます。
Pod ソースの場所をオーバーライドする手順とオプションについては、「Podfile 構文リファレンス」を参照してください。
すべての公式リリースはこのリポジトリでタグ付けされており、CocoaPods 経由で入手できます。ローカル ソース スナップショットまたは未リリースのブランチにアクセスするには、次のような Podfile ディレクティブを使用します。
ブランチ経由で FirebaseFirestore にアクセスするには:
ポッド 'FirebaseCore', :git => 'https://github.com/firebase/firebase-ios-sdk.git', :branch => 'main'ポッド 'FirebaseFirestore', :git => 'https:// github.com/firebase/firebase-ios-sdk.git', :branch => 'main'
firebase-ios-sdk リポジトリのチェックアウト バージョンを介して FirebaseMessaging にアクセスするには:
ポッド 'FirebaseCore', :path => '/path/to/firebase-ios-sdk'pod 'FirebaseMessaging', :path => '/path/to/firebase-ios-sdk'
実験的な Carthage ディストリビューションの手順については、Carthage.md を参照してください。
フレームワークまたはライブラリから Firebase を使用する方法の詳細については、firebase_in_libraries.md を参照してください。
このリポジトリで Firebase ソフトウェアを開発するには、少なくとも次のソフトウェアがあることを確認してください。
Xcode 15.2 (またはそれ以降)
CocoaPods は依然として標準的な開発方法ですが、リポジトリの多くは現在、Swift Package Manager を使用した開発をサポートしています。
以下をインストールします。
CocoaPods 1.12.0 (またはそれ以降)
CocoaPods が生成する
開発するポッドの場合:
ポッド生成 Firebase{ここでの名前}.podspec --local-sources=./ --auto-open --platforms=ios
注: CocoaPods キャッシュが古い場合は、 pod gen
コマンドの前にpod repo update
実行する必要がある場合があります。
注: これらのプラットフォーム向けに開発/テストするには、 --platforms
オプションをmacos
またはtvos
に設定します。 10.2 以降、Xcode はマルチプラットフォームの CocoaPods ワークスペースを適切に処理しません。
Firestore には自己完結型の Xcode プロジェクトがあります。 Firestore/README マークダウン ファイルを参照してください。
pod gen {name here}.podspec --local-sources=./ --auto-open --platforms=ios
App-iOS ビルド設定で Mac ボックスにチェックを入れます
「設定」の「署名と機能」タブでアプリに署名します
プロジェクトマネージャーで「ポッド」をクリックします
iOS ホスト アプリと単体テスト ターゲットに署名を追加する
単位単位スキームを選択します
実行してビルドとテストを行う
あるいは、各ターゲットでの署名を無効にします。
「ビルド設定」タブに移動します
+
をクリックします
Add User-Defined Setting
選択します
CODE_SIGNING_REQUIRED
設定を値NO
で追加します。
テスト スキームを有効にするには: ./scripts/setup_spm_tests.sh
open Package.swift
か、Finder でPackage.swift
をダブルクリックします。
Xcode がプロジェクトを開きます
ビルドするライブラリまたは実行するテスト スイートのスキームを選択します
スキームとともに実行先を選択して、ターゲット プラットフォームを選択します
詳細については、AddNewPod マークダウン ファイルを参照してください。
ヘッダーとインポートの管理については、「HeadersImports Markdown ファイル」を参照してください。
コードの形式が一貫していることを確認するには、プル リクエスト (PR) を作成する前にスクリプト ./scripts/check.sh を実行します。
GitHub Actions は、コードの変更がスタイルに準拠した方法で行われたことを検証します。 clang-format
とmint
をインストールします。
brew install Clang-format@19brew install mint
スキームを選択し、Command + u を押してコンポーネントを構築し、その単体テストを実行します。
サンプル アプリと統合テストを実行するには、有効なGoogleService-Info.plist
ファイルが必要です。 Firebase Xcode プロジェクトには実際の値のないダミーの plist ファイルが含まれていますが、これらは実際の plist ファイルに置き換えることができます。独自のGoogleService-Info.plist
ファイルを取得するには:
Firebaseコンソールに移動します
新しい Firebase プロジェクトを作成します(まだない場合)
テストするサンプル アプリごとに、サンプル アプリのバンドル識別子(例: com.google.Database-Example
)を使用して新しい Firebase アプリを作成します。
結果として得られるGoogleService-Info.plist
をダウンロードし、Xcode プロジェクトに追加します。
カバレッジ レポートの生成手順については、scripts/code_coverage_report/README マークダウン ファイルを参照してください。
これらのコンポーネントの特別な手順については、以下のセクションを参照してください。
特定の Firebase Auth 開発については、さまざまなサンプルやテストとともに、FirebaseAuth ポッドの構築と実行に関する手順について、Auth Sample README を参照してください。
Firebase データベース統合テストは、ローカルで実行されているデータベース エミュレーターまたは本番インスタンスに対して実行できます。
ローカル エミュレータ インスタンスに対して実行するには、統合テストを実行する前に./scripts/run_database_emulator.sh start
を呼び出します。
実稼働インスタンスに対して実行するには、有効なGoogleServices-Info.plist
を指定し、それをFirebaseDatabase/Tests/Resources/GoogleService-Info.plist
にコピーします。テストの実行中は、セキュリティ ルールをパブリックに設定する必要があります。
Firebase Dynamic Links は非推奨となっているため、新しいプロジェクトでは使用しないでください。サービスは 2025 年 8 月 25 日に終了します。
詳細なガイダンスについては、ダイナミック リンクの非推奨に関する FAQ ドキュメントを参照してください。
特定の Firebase Performance Monitoring 開発については、SDK の構築手順については Performance README を、開発テスト アプリと Performance の統合についての手順については Performance TestApp README を参照してください。
ストレージ統合テストを実行するには、StorageIntegration.swift の手順に従ってください。
プッシュ通知は、開発者ポータルで特別にプロビジョニングされたアプリ ID にのみ配信できます。プッシュ通知の受信をテストするには、次のことを行う必要があります。
サンプル アプリのバンドル識別子を Apple Developer アカウントで所有しているものに変更し、そのアプリ ID でプッシュ通知を有効にします。
また、 [プロジェクト設定] > [クラウド メッセージング] > [Firebase アプリ]で、APN プロバイダーの認証キーまたは証明書を Firebase コンソールにアップロードする必要があります。
iOS デバイスがテスト デバイスとして Apple Developer ポータルに追加されていることを確認します。
iOS シミュレーターはリモート通知に登録できず、プッシュ通知を受信しません。プッシュ通知を受信するには、上記の手順に従い、物理デバイスでアプリを実行します。
SDK の構築とテストの手順については、Vertex AI for Firebase README を参照してください。
Firebase は、macOS、Catalyst、tvOS の公式ベータ サポートを提供します。 visionOS と watchOS はコミュニティでサポートされています。多くのマルチプラットフォーム PR に対するコミュニティの貢献に感謝します。
現時点では、Firebase の製品のほとんどは Apple プラットフォーム全体で利用できます。特にvisionOSとwatchOSでは、まだいくつかのギャップがあります。現在のサポート マトリックスの詳細については、Firebase ドキュメントのこの表を参照してください。
サポートされている場合、visionOS は期待どおりに動作しますが、ソース ディストリビューションを使用する必要がある Swift Package Manager 経由の Firestore を除きます。
Firestore ソース配布を有効にするには、Xcode を終了し、コマンド ラインからFIREBASE_SOURCE_FIRESTORE
環境変数を使用して目的のプロジェクトを開きます: open --env FIREBASE_SOURCE_FIRESTORE /path/to/project.xcodeproj
。 Firestore のバイナリ ディストリビューションの使用に戻るには、Xcode を終了し、環境変数を使用せずに通常どおり Xcode を開きます。
コミュニティからの貢献のおかげで、Firebase SDK の多くはコンパイル、単体テストの実行、watchOS 上で動作するようになりました。独立した Watch アプリのサンプルを参照してください。
watchOS は Firebase で正式にサポートされていないことに注意してください。 GitHub Actions を使用して基本的な単体テストの問題を検出できますが、SDK が watchOS 上で期待どおりに動作しなくなるいくつかの変更が発生する可能性があります。これに遭遇した場合は、問題を報告してください。
コンソールでのアプリのセットアップ中に、「アプリがサーバーと通信したかどうかを確認しています」のようなステップが表示される場合があります。これは Analytics に依存しているため、watchOS では機能しません。メッセージを無視して続行しても安全です。残りの SDK は期待どおりに動作します。
watchOS のサポートは限定的です。 watchOS の制限により、マッハ例外と信号クラッシュは記録されません。 (SwiftUIのクラッシュはマッハ例外として生成されるため記録されません)
コミュニティからの貢献のおかげで、 FirebaseCombineSwiftには Apple の Combine フレームワークのサポートが含まれています。このモジュールは現在開発中であり、運用環境での使用はまだサポートされていません。詳細については、ドキュメントを参照してください。
Firebase Apple SDK オープンソースの計画と方向性の詳細については、「ロードマップ」を参照してください。
Firebase Apple SDK へのコントリビュートの詳細については、「コントリビュート」を参照してください。
このリポジトリのコンテンツは、Apache License バージョン 2.0 に基づいてライセンスされています。
Firebase の使用には、Firebase サービスの利用規約が適用されます。