昨日、GoogleはFirebase用の新しいツールセットを発表しました。その1つは、通知をサーバーからアプリケーションを使用しているデバイスに送信する通知でした。Firebaseによるプッシュ通知
ただし、新しいメッセージを受信したユーザーに通知できるようになりましたか?
もしそうでない場合は、これを達成する方法がありますか?
昨日、GoogleはFirebase用の新しいツールセットを発表しました。その1つは、通知をサーバーからアプリケーションを使用しているデバイスに送信する通知でした。Firebaseによるプッシュ通知
ただし、新しいメッセージを受信したユーザーに通知できるようになりましたか?
もしそうでない場合は、これを達成する方法がありますか?
ドキュメントを見ると、これは現在自動的には可能ではないようです。ここでは別のサーバーで "手動"、それを達成するために可能な方法は次のとおりです。
[[FIRMessaging messaging] subscribeToTopic:@"/topics/InsertUserIDHere"];
で
FirebaseMessaging.getInstance().subscribeToTopic("InsertUserIDHere");
にユーザーを購読します
詳細はhereをご覧ください。
ブリリアント!私は2つの質問がある場合、私はあります。まず、別のサーバを使用して通知をどのように送信するのか、Firebaseはコンソールからの通知の送信のみを許可します。第二に、私は多くのユーザーがいると効率的でしょうか?ドキュメントには、「コンソールに新しいトピックが表示されるまでに1日ほど遅れることがあります」と記載されています。ありがとう。 – Khaled
私が最後に行ったコメントは無視してください。コンソールなしでサーバー経由でメッセージを送信する方法の詳細については、[こちら](https://firebase.google.com/docs/cloud-messaging/topic-messaging)を参照してください。コンソールを使用していない場合、遅延がまだ適用可能かどうかはわかりません。 – user2997154
(特定の「トピック」をターゲットにする)ユーザーグループに、または(Firebase Cloud Messagingトークンをターゲットとする)単一のデバイスにメッセージを送信できます。
FirebaseMessaging.getInstance().subscribeToTopic("topicName");
をデバイストークンの使用を取得するには(* 1):
FirebaseInstanceId.getInstance().getToken();
次にあなたがFirebase Notificaitons Webコンソールを使用するか、またはすることができますトピックの使用にデバイスを購読する
サーバーからメッセージを送信する場合は、FCMサーバーAPIを使用します。
参照:https://firebase.google.com/docs/cloud-messaging/downstream#sending_topic_messages_from_the_server
注:
トークンがまだ利用できない場合は、[1] getToken()
はnullを返すことができます。
コールバックonTokenRefresh()
を使用して、トークンが使用可能になったときとトークンがローテーションされたときに通知することができます。
参照:https://firebase.google.com/docs/cloud-messaging/android/client#sample-register
他のユーザーからの新しいメッセージを意味する場合は、これも不思議でした。ドキュメントを見ると、これはまだ自動的には不可能なようです。私はあなたが送信された各メッセージの別のサーバーチェックを持って、受信者のユーザーのIDでタグ付けされた通知を作成する必要があると思います。次に、受信者を自分のユーザーIDタグに登録します。 [link](https://firebase.google.com/docs/notifications/android/console-topics#receive_topic_messages_on_an_android_client_app) – user2997154
docs @ user2997154で狩猟をチェックしてください。あなたが答えとして書くなら、私はupvoteします。 :-) –