2012-07-04 106 views

回答

11

我想我可以帮你出这... i'm与GCM这一周的工作,和我的device's注册ID是这样的:

APA91bHPRgkF3JUikC4ENAHEeMrd41Zxv3hVZjC9KtT8OvPVGJ-hQMRKRrZuJAEcl7B338qju59zJMjw2DELjzEvxwYv7hH5Ynpc1ODQ0aT4U4OFEeco8ohsN5PjL1iC2dNtk2BAokeMCg2ZXKqpc8FXKmhX94kIxQ

163个字符!

我希望这可以帮助你......

+1

谢谢,我决定现在选择一个varchar(250)(希望谷歌不会增加超过250字符的REGID) – Dahevos

+0

是的,我也是这么做的... btw,这是我的第一个C2DM/GCM发展...我现在有点卡住了...因为我的设备似乎得到了注册ID的权利...我有一个基于PHP的服务器,其中一个用户希望每次发送通知用户添加任何内容...这似乎也是正确的!但!我没有得到任何通知我的手机/模拟器。 我检查谷歌Api控制台,看看是否有任何交通报告......但没有数据!我对此感到沮丧! 你知道吗?谢谢! – VaroX

+0

检查清单文件中的权限。在我的回答中使用thie脚本 – Dahevos

55

阿谷歌工程师 said the registration ID can be up to 4K 。 用户观察到它是255个字符。

+5

而且,这里就是为什么它是4K的解释:对于一个registration_id的最大尺寸为界一个cookie的最大大小,即4K(4096字节)。实际上,代币将比这个小得多,但你不应该依赖这种行为。来自https://groups.google.com/forum/#!topic/android-c2dm/AUGlvmJPyMM –

+4

但是另一个人说什么__“255是用varchar。4k来执行的,而不是注册ID。”__后来在评论中? https://groups.google.com/forum/#!msg/android-gcm/q2PzJTP71TY/YUKmCjx5kKwJ –

+0

阅读相同的谷歌组帖子,它似乎是一个错误,4k是消息的有效载荷的限制,不是注册号。 – naXa

4

在iOS上我所有的注册标记是这样的:

lhBV25_Znsk:APA91bHFM9nbX-s0py6-ktzgdpP_y85RahdL3OJ4LG4v-jT_9QY8ZbZH8uK-JNO_BDy75b6RfDT-v-j5W0FXIFTif72ckT3kqLNBDNWYSd5AhxYwdJi3Wqfdqqi-wL8F_k1nm2qUS3Ra 

(152个字)

注意冒号后11个字符。 还要注意它在冒号后有序列“APA ...”,但是你应该使用整个注册标记。

+0

我有同样的问题,我想知道同样的事情......有人想出了这个? – user2387149

+0

GCM不适合我的原因是我上传了错误的.p12文件到Google服务器。确保你生成了正确的。 –

+0

你使用GCM for ios吗? – alicanbatur

1

对于GCM ID没有官方限制,有效载荷大小在我写这篇文章时是4k。虽然,根据this和我之前的讨论,假设255为GCM ID是安全的。

如果数据库中存在问题,我建议您使用TEXT。

+0

在SQL Server中,最好使用VARCHAR(MAX),因为TEXT是一个合适的工作。 –