Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

AppleプラットフォームでのFirebaseの詳細

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Firebase を使用して Apple アプリを開発していると、なじみのない、または Firebase に固有の概念を発見することがあります。このページは、これらの質問に答えたり、詳細を学ぶためのリソースを紹介したりすることを目的としています.

このページに記載されていないトピックについて質問がある場合は、お気軽にオンライン コミュニティにアクセスしてください。また、このページは定期的に新しいトピックで更新されますので、知りたいトピックが追加されているかどうかを確認してください。

プラットフォーム別の Firebase ライブラリ サポート

次の表は、どの Firebase ライブラリがどの Apple プラットフォームと互換性があるかを示しています。当面の間、watchOS はコミュニティ サポートのみです。インストール手順と既知の問題については、 Firebase Apple プラットフォーム SDK GitHub リポジトリを参照してください。

としょうかんiOSマックOSマック
触媒
tvOSウォッチOS
A/B テスト
分析v8.9.0+ v8.9.0+ v8.9.0+
広告 ID を使用しない分析v8.9.0+ v8.9.0+ v8.9.0+
アナリティクス オンデバイス コンバージョン
App Check DeviceCheck プロバイダーウォッチOS 9+
App Check App Attest プロバイダーiOS 14+ macOS 11+カタリスト 14+ TVOS 15+ウォッチOS 9+
App Check カスタム プロバイダとデバッグ プロバイダ
アプリの配布
認証
クラウド ファイアストア
クラウド機能
クラウド メッセージング
クラウドストレージ
クラッシュリティクス
動的リンク
Firebase のインストール
Firebase ML モデル ダウンローダー
アプリ内メッセージ
パフォーマンス監視
リアルタイム データベース
リモート設定

アプリ クリップ

ほとんどの Firebase ライブラリは App Clip ターゲットでビルドおよび実行されますが、多くは基盤となる OS の制限の結果として制限されています。既知の問題は次のとおりです。

  • Dynamic Links は、アプリがインストールされていない状態でリンクをタップした場合、ユーザーを App Clip に送信できません。
  • Firestore と Realtime Database は、基盤となる CFStream 依存関係により、アプリ クリップにデータを読み込めません。

既知の App Clip の問題の完全なリストについては、 Firebase GitHub リポジトリを参照してください。

GoogleService-Info.plist

Firebase を Apple プロジェクトに追加する一環として、 GoogleService-Info.plist構成ファイルをプロジェクトに追加する必要があります。 1 つのアプリで複数の Firebase プロジェクトを使用する場合は、複数のプロジェクトの構成に関するドキュメントを参照してください。

Firebase アプリの初期化プロセスの詳細については、 Swift のリファレンス ドキュメントを参照してください。

Swift パッケージ マネージャー

Swift Package Manager の統合について詳しくは、ガイドをご覧ください。

スウィフト拡張機能

Firebase Apple プラットフォーム SDK Swift 拡張機能は、既存の Firebase Apple プラットフォーム ライブラリに対する小さなオープンソース アドオンであり、コードで Swift 言語固有の機能を使用できるようにします。

次の Swift 拡張フレームワークが利用可能です。

  • FirebaseAnalyticsSwift
  • FirebaseDatabaseSwift
  • FirebaseFirestoreSwift
  • FirebaseInAppMessagingSwift (ベータ版)
  • FirebaseRemoteConfigSwift

Firebase 9.0 以降では、Objective-C インターフェースを含む一部の Firebase ライブラリが Swift に実装され、補助的な依存関係を含めることなく Swift ネイティブの機能を提供します。次の SDK は、拡張 SDK を使用せずにネイティブ Swift API を提供します。

  • FirebaseFunctions
  • FirebaseStorage

CocoaPods または Swift Package Manager を使用して Swift 拡張機能をインストールできます。 CocoaPods を使用して Swift 拡張機能をインストールするには、以下に示すように Podfile に含めます。

pod 'FirebaseAnalyticsSwift', '~> 10.0'
pod 'FirebaseInAppMessagingSwift', '~> 10.0-beta'
pod 'FirebaseDatabaseSwift'

Swift Package Manager を使用して、必要な Swift 拡張ライブラリを Firebase Apple プラットフォーム SDK と同じリポジトリから直接インポートします。

SwiftUI

Firebase は SwiftUI を完全にサポートしていますが、Firebase が完全な SwiftUI 環境で正しく機能するためには、セットアップが UIKit アプリとは少し異なります。詳細については、Peter Friese によるこのブログ投稿をご覧ください。

既知の問題により、SwiftUI アプリケーションはスウィズリングを無効にする必要があります。詳細については、アプリ デリゲート スウィズリングのセクションを参照してください。

アプリ デリゲートの入れ替え

Firebase は、アプリのアプリ デリゲート クラスのいくつかのメソッドを入れ替えて、FCM や APNs トークンなどの特定の Firebase サービスを OS コールバックに自動的に接続します。アプリのInfo.plistファイルにフラグFirebaseAppDelegateProxyEnabledを追加し、それをNOに設定することで、アプリのスウィズリングを無効にすることができます。

Analytics、App Distribution、Authentication、FCM の 4 つの Firebase 製品で App Delegate スウィズリングが使用されています。アプリケーションでスウィズリングを無効にしており、次のいずれかの製品を使用している場合は、製品固有のガイドを参照して、スウィズリングを使用せずに製品を使用する方法を確認してください。

iOS14対応

iOS 14 には、ユーザーの広告識別子に関するユーザー権限の新しい変更が含まれています。アプリが影響を受ける可能性があるかどうかの詳細については、iOS 14 の準備ガイドを参照してください。

Firebase Apple プラットフォーム SDK のオープンソース リソース

Firebase はオープンソース開発をサポートしており、コミュニティへの貢献とフィードバックを奨励しています。

Firebase Apple プラットフォーム SDK

Analytics を除くすべての Apple プラットフォーム用の Firebase SDK は、公開されているFirebase GitHub リポジトリでオープン ソース ライブラリとして開発されています。

FirebaseUI

FirebaseUI は、Firebase 上に構築された一連のユーティリティ ライブラリであり、認証用のドロップイン UI フローと、Cloud Firestore および Realtime Database 用のデータ ユーティリティが含まれています。 FirebaseUI の詳細については、 GitHub ページを参照してください。

クイックスタート サンプル

Firebase は、iOS 上のほとんどの Firebase API のクイックスタート サンプルのコレクションを保持しています。これらのクイックスタートは、公開されている Firebase GitHubクイックスタート リポジトリで見つけてください。

Xcode で各クイックスタートを開き、モバイル デバイスまたはシミュレーターで実行できます。または、これらのクイックスタートを、Firebase SDK を使用するためのサンプル コードとして使用できます。