web-dev-qa-db-ja.com

firebaseコンソールを使用してデータメッセージを送信できません

Firebaseコンソールを使用していますが、それを使用して通知メッセージのみを送信できます。

同じものを使用してデータメッセージを送信する方法はありますか?

26
amodkanthe

コンソール経由で通知メッセージを送信できるようになりました。 データメッセージとは異なることに注意してください。通知メッセージは、アプリがフォアグラウンドにあるときにのみonMessageReceivedコールバックをトリガーします。

これらは、compose message画面のadvanced optionsタブ内にあります。

enter image description here

展開して、キー/値マップを入力するだけです。

enter image description here

これらは、通知のデータフィールドに含まれます。

4
oldergod

Firebase Notifications Consoleは、通知メッセージの送信にのみ使用できます。データメッセージの送信には使用できません。

Firebaseドキュメントのメッセージタイプ の表を参照してください:

通知メッセージ

シナリオの使用:FCMは、クライアントアプリに代わってエンドユーザーデバイスにメッセージを自動的に表示します。通知メッセージには、事前定義されたユーザーに見えるキーのセットがあります。

送信方法

  1. アプリサーバーとFCMサーバーAPIを使用します。通知キーを設定します。オプションのデータペイロードがある場合があります。常に折りたたみ可能。

  2. 通知コンソールを使用します。メッセージテキスト、タイトルなどを入力して送信します。通知コンソールでカスタムデータを提供して、オプションのデータペイロードを追加します。常に折りたたみ可能。

データメッセージ

シナリオの使用:クライアントアプリはデータメッセージの処理を担当します。データメッセージには、カスタムキーと値のペアのみがあります。

送信方法

  • アプリサーバーとFCMサーバーAPIを使用する:データキーのみを設定します。折りたたみ可能または折りたたみ不可のいずれかです。
25

Postman(http要求をテストするための残りのクライアント)を使用して、通知メッセージとデータメッセージの両方をテストできます。スクリーンショットを参照してください。

enter image description here

ヘッダーパス:

key:Content-Type, value:application/json
key:Authorization:key=<Server key>
17
Mohd Haseen

こちらをご覧ください: Firebase Push notification update DB 、6月からの私の投稿。

結論として、HTTP POSTへのリクエストを送信する必要があります https://fcm.googleapis.com/fcm/send

https://fcm.googleapis.com/fcm/send
Content-Type:application/json
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA

{ "data": {
"score": "5x1",
"time": "15:10"
},
  "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..."
}
16
Nirel