Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Firebase Cloud Messaging

Firebase Cloud Messaging(FCM)は、メッセージを無料で確実に送信するためのクロスプラットフォーム メッセージング ソリューションです。

FCM を使用すると、同期可能な新しいメールやその他のデータがあることをクライアント アプリに通知できます。通知メッセージを送信することで、ユーザーにアプリを再度アピールし、定着率の向上につなげることができます。インスタント メッセージなどの用途では、メッセージで最大 4,000 バイトのペイロードをクライアント アプリに転送することも可能です。

非推奨の Google Cloud Messaging API を使用している場合は、FCM に移行する方法についての詳細をご覧ください。

iOS の設定 Android の設定 ウェブの設定 C++ の設定 Unity の設定

主な機能

通知メッセージまたはデータ メッセージの送信 ユーザーに対して表示される通知メッセージを送信します。 または、データ メッセージを送信して、アプリケーション コードで行われている処理を詳細に確認できます。メッセージのタイプをご覧ください。
汎用性の高いメッセージのターゲット設定 クライアント アプリへのメッセージ配信を 3 つの方法(個々のデバイスに、デバイス グループに、または特定トピックの配信登録をしているデバイスに)で行うことができます。
クライアント アプリからのメッセージの送信 信頼性が高くバッテリー効率の良い FCM の接続チャネルを介して、デバイスからサーバーへと受信確認、チャット、その他のメッセージを送り返します。

仕組み

FCM の実装には、送信と受信のために以下の 2 つの主要コンポーネントが含まれています。

  1. メッセージの作成、ターゲティング、送信を行う Cloud Functions for Firebase やアプリサーバーなどの信頼できる環境。
  2. 対応するプラットフォーム固有のトランスポート サービスを介してメッセージを受信する iOS、Android、またはウェブ(JavaScript)クライアント アプリ。

メッセージは、Firebase Admin SDK または FCM サーバー プロトコルを介して送信できます。 Notifications Composer を使うと、送信テストをしたり、組み込まれている強力なターゲティング機能や分析機能、またはカスタムのインポートしたセグメントを利用して、マーケティングやエンゲージメント目的のメッセージを送信したりできます。

FCM のコンポーネントの詳細と重要な情報については、アーキテクチャの概要をご覧ください。

実装パス

FCM SDK を設定する ご使用のプラットフォームに応じた設定手順に沿って、アプリに Firebase と FCM を設定します。
クライアント アプリを開発する メッセージ処理、トピック サブスクリプション ロジック、その他のオプション機能をクライアント アプリに追加します。開発中は、Notifications Composer からテスト メッセージを簡単に送信できます。
アプリサーバーを開発する 送信ロジック(認証、送信リクエストの作成、応答の処理などを行うロジック)を作成するために、Admin SDK を使用するか、またはサーバー プロトコルの 1 つを使用するかを決定します。次に、信頼できる環境でロジックを構築します。クライアント アプリケーションからのアップストリーム メッセージングを使用する場合は、XMPP を使用する必要があります。XMPP で必要となる永続的な接続が Cloud Functions ではサポートされないことに注意してください。

次のステップ

  • Android または iOS のクイックスタート サンプルを実行する。これらのサンプルでは、Firebase コンソールを使用して単一のデバイスにテスト メッセージを送信するコードを実行し、確認することができます。

  • Android または iOS 用のチュートリアルを試してみる。

  • Firebase Cloud Messaging を AndroidiOSウェブのアプリに追加する。

  • メッセージ リクエストを作成して送信するための信頼できる環境を設定する。Admin SDK を使用して送信ロジックを作成し、そのコードを Google によって管理される Cloud Functions for Firebase やその他のクラウド環境で簡単にデプロイできます。あるいは、FCM サーバー プロトコルを使用してサーバー開発を行うこともできます。

  • データ ペイロードの送信、メッセージの優先順位付け、その他のメッセージング オプションなど、FCM で提供されている機能の詳細を確認する。

  • Firebase Cloud Messaging を使用できるように、既存の Android または iOS の GCM 実装を移行する。