web-dev-qa-db-ja.com

GCM-登録IDの最大長

更新:[〜#〜] gcm [〜#〜] は非推奨です。 [〜#〜 ] fcm [〜#〜]

GCMサーバーが発行する登録IDの最大長は? GCMのドキュメントでは、この情報は提供されていません。これをグーグルで調べると、登録IDは本質的に固定長ではなく、最大4K(4096バイト)の長さになる可能性があります。しかし、これらはGoogleからの公式の回答ではありません。現在、162文字の登録IDを受け取っています。誰でも助けることができますか?

47
Raj Chaudhari

これについても知りたいです。私のreg idサイズは183文字です。 4Kは言うまでもなく、512文字を超えることはないでしょう。バルク通知、4K reg id x 1000 = 4MBメッセージサイズの送信を想像してください!

最後に、MySQLテーブルで 'text'タイプを使用して登録IDを保存するだけです。したがって、Googleが1K、2K、または4K(非常に可能性の低い)reg idを送信しても、それを処理できます。

更新:新しいreg idサイズ205に出会いました。

21
azgolfer

Android-gcmフォーラムでは、Googleの開発者 確認 4kです

42
macno

これはGCMのドキュメントで述べられていることです。

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

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

オブジェクトまたは他の文字列以外のデータ型(整数やブールなど)を含める場合は、文字列への変換を自分で行う必要があります。また、キーは予約語(googleまたはgoogleで始まる任意のWord)にできないことに注意してください。

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

0
Shaolin