質問

更新: GCM は推奨されていません。href="https://firebase.google.com/docs/cloud-messaging/" rel="nofollow noreferrer"> fcm

GCMサーバが発行した登録IDの最大長は何ですか?GCMのマニュアルはこの情報を提供していません。このためにGooglingは、登録IDが自然の中で固定された長さではなく、最大4K(4096バイト)の長さである可能性があります。しかし、これらはGoogleからの正式な回答ではありません。私は現在162文字の長さの登録IDを受信しています。誰かが助けてくれる?

役に立ちましたか?

解決

私はこれについても知っています。私のREG IDサイズは183文字です。私はそれが512文字を超えないと思うだろうと思いますが、4K。バルク通知を送信すると、4K REG ID X 1000= 4MBメッセージサイズを想像してみてください。

最後に、登録IDを保存するためにMySQLテーブルの「テキスト」タイプを使用するだけです。したがって、Googleが1K、2K、または4K(非常にありそうもない)REG IDを送っても、私はそれを処理することができます。

Update:私は新しいREG IDサイズに遭遇しました:205。

他のヒント

Googleの開発者 それを確認する4K

これはGCM DOCで言ったもの、

フィールドがメッセージのペイロードデータのキー値のペアを表すJSONオブジェクト。存在する場合、ペイロードデータはアプリケーションデータとしてインテントに含まれ、鍵は追加の名前の名前です。たとえば、 "data":{"score": "3x1"}は、その値が文字列3x1であるIntertend__型スコアをもたらすでしょう。

メッセージの合計サイズには制限がありますが、キー/値のペアの数に制限はありません(4KB)。値は任意のJSONオブジェクトにすることができますが、値はGCMサーバーの文字列に変換されるため、文字列を使用することをお勧めします。

オブジェクトやその他の文字列以外のデータ型(整数やブール値など)を含める場合は、自分で文字列への変換を行う必要があります。また、キーは予約語(Googleから始まるまたは任意の単語)にすることはできません。

物をわずかに複雑にするために、ペイロードデータで技術的に許可されている予約語(collapse_keyなど)があります。ただし、要求に単語が含まれている場合、要求内の値はペイロードデータの値を上書きします。したがって、この表のフィールド名として定義されている単語を使用して、技術的に許可されている場合でも、お勧めできません。オプションの

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top