9

私はGCMの初心者です。アプリがインストールされているすべてのデバイスにメッセージを送信したいと考えています。registration_id について読みました: GCM への最初の接続後、Google はこの一意の文字列をデバイスに送信します。私はサーバーの世界の初心者ですが、サーバー側で間違っていなければ、デバイスに通知を送信するには、registration_id の配列とメッセージを Google に送信する必要があります。

Google は登録 ID をどのように持っているか知っていますか? 登録 ID を渡さずにすべてのデバイスにメッセージを送信する方法はありますか? ありがとうございました。

4

6 に答える 6

15

GCM 3.0 では、トピックのサポートにより、すべてのデバイスに通知を送信できるようになりました。アプリは 1 つ以上のトピックにサブスクライブする必要があり、サーバーは個々のデバイスを指定せずにそのトピックに通知を送信できます。

https://developers.google.com/cloud-messaging/topic-messaging

すべてのデバイスを「global」というトピックにサブスクライブしてから、メッセージをすべての registration_ids に送信する代わりに「/topics/global」に送信できます。

于 2015-07-17T19:40:51.027 に答える
11

登録 ID を渡さずにすべてのデバイスにメッセージを送信する方法はありますか?

とんでもない。
GCM に正常に登録した後、ユーザー (Android アプリケーション) は登録 ID をアプリケーション サーバーに送信し、データベースなどのどこかに保存する必要があります。この登録 ID は、特定のデバイスに通知を送信するために使用されます。

すべてのデバイスに通知を送信するには、そのデータベースからすべての登録 ID を選択し、あなたが言ったように、それらを配列に入れて、さらに GCM に渡します。

更新: Firebase Cloud Messaging では、https ://firebase.google.com/docs/cloud-messaging/android/topic-messaging を使用して、登録 ID を明示的に指定せずに通知を送信できるようになりました。

于 2013-07-31T09:04:39.973 に答える
1

notification_key特定のグループを、グループに関連付けられたすべての登録トークンにマッピングすることによって、デバイス グループを識別する を作成します(アプリ サーバーで通知キーを作成できます)。を使用するnotification_keyと、一度に 1 つのメッセージを 1 つの登録トークンに送信する代わりに、アプリ サーバーは に 1 つのメッセージを送信できnotification_key、GCM はそのメッセージをグループのすべての登録トークンに送信します。

また、notification_key に許可されるメンバーの最大数は20であることに注意してください。

Google Dev サイトは、特にこのトピックに関する新しいガイドを追加しました。 https://developers.google.com/cloud-messaging/notifications#sending_downstream_messages_to_device_group

于 2016-04-20T05:12:29.220 に答える
-1

ここに混乱があると思います。私は github サンプル コード (たとえば、Tomcat にデプロイされた Java のアプリ サーバー) と Android アプリを使用しました。そこでは、登録 ID をアプリ サーバーに「渡す」または「送信」しませんでした。関連する API を呼び出して登録 ID を取得し、それらを使用して通知を送信しました。GCM 登録 ID に関するすべてのスレッドで、登録 ID をサード パーティのアプリ サーバーに渡す必要があると書かれているのはなぜですか? 私は同意しないのではないかと心配しています。サードパーティのアプリサーバーは、GCM サーバー自体にクエリを実行して、特定の送信者 (送信者 ID) から通知を受信するために登録されているデバイスを見つけることができると思います。登録 ID をサードパーティのアプリ サーバーに手動で渡す必要があると、プロセスを自動化するという目的全体が無効になります。ここに何かが欠けているか、非推奨のコンテンツを使用している可能性があります。ともかく、

于 2013-12-23T06:27:00.537 に答える