私はfirebaseコンソールを使用しており、それを使用して通知メッセージのみを送信できます。firebaseコンソールを使用してデータメッセージを送信できません
同じ方法でデータメッセージを送信する方法はありますか?
私はfirebaseコンソールを使用しており、それを使用して通知メッセージのみを送信できます。firebaseコンソールを使用してデータメッセージを送信できません
同じ方法でデータメッセージを送信する方法はありますか?
notification messageをコンソールから送信できるようになりました。これは、のデータメッセージとは異なります。通知メッセージは、アプリがフォアグラウンドにあるときにのみonMessageReceived
コールバックをトリガーします。
彼らはメッセージ作成画面上高度なオプションタブ内にあります。
ちょうどそれを拡張し、あなたのキー/値のマップを入力します。
これらは、通知のデータフィールドに含まれます。
Firebase通知コンソールは、通知メッセージの送信にのみ使用できます。データメッセージの送信には使用できません。
message types in the Firebase documentationの表を参照してください:
通知メッセージ
利用シナリオ:FCMは自動的にクライアントアプリケーションに代わってエンドユーザデバイスにメッセージが表示されます。通知メッセージには、事前に定義されたユーザーの視認可能なキーのセットがあります。
はどのようにを送信します
アプリサーバとFCMサーバーのAPIを使用してください:通知キーを設定します。オプションのデータペイロードを持つことができます。いつも折りたたむ。
通知コンソールを使用する:メッセージテキスト、タイトルなどを入力して送信します。通知コンソールにカスタムデータを入力して、オプションのデータペイロードを追加します。いつも折りたたむ。
データメッセージ
利用シナリオ:クライアントアプリデータメッセージを処理するための責任があります。データメッセージには、カスタムのKey-Valueペアのみがあります。
どうを送信するには、次の
- あなたのアプリケーションサーバとFCMサーバーのAPIを使用してください:データのみキーを設定します。折りたたみ式または非折り畳み式のどちらでもかまいません。
間違った答えメッセージングAPI(「ダウンストリームmsg」)を使用する場合は、DBを更新するために使用できます。 – Nirel
HTTPエンドポイントにPOST要求を送信することで、ダウンストリームデータメッセージをFirebase Cloud Messagingで確実に送信できます。しかし、[Firebase Notifications Console](https://console.firebase.google.com/project/_/notification)からデータメッセージを送信することはできません。これは質問の内容です。 –
こちらをご覧ください:Firebase push notifications update DB、6月からの私のポストを。結論として
、あなたは(テストhttpリクエストのためのクライアントを休ま)ポストマンを使用して.Seeスクリーンショットを通知メッセージとデータメッセージの両方をテストすることができ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..."
}
この回答はこの質問の文脈に適合しません。尋ねられた質問をチェックしてください - *彼は具体的には不可能なコンソールを使ってデータメッセージを送信することについて尋ねます*。 –
特定のトピックにデータメッセージを送信する場合、プロパティ "to"の値は "/ topics/TOPIC_ID"の形式でなければなりません。そうでないとエラーが発生します – Apperside
これは正しく動作しません。あなたのアプリがバックグラウンドにある場合は、 'データ'を含めることになっていても、 'onMessageReceived'へのコールバックは受信されません。 –
@WiseShepherd私は実際に昨日同じ問題に気付きましたが、_notification message_と_data message_しか送信できません。私は自分の答えを更新しました。 – oldergod