【发布时间】:2013-07-15 20:50:59
【问题描述】:
使用 agsXMPP 连接到 Google Cloud Messaging XMPP API 以向 Android 设备发送通知。
连接建立正常,但在 SASL 启动时,发送 PLAIN auth 元素后,服务器停止响应,并在再过 20 秒后关闭连接。
Base64 解码文档页面 (http://developer.android.com/google/gcm/ccs.html) 中的身份验证示例显示以下登录值:
126200347933@projects.gcm.android.com12620034793@projects-ga-.android.comAIzaSyB3rcZNkfnqKdFb9mhzCBiYpORDA2JWWtw
agsXMPP 在哪里(我认为是正确的)对字符串进行编码,给出如下内容:
[项目ID]\40gcm.googleapis.com[**API*KEY*PASSWORD**]
注意我的版本中的 \40 而不是 Google 示例中的 @ - 这会有所不同吗?
我期待成功或失败消息,根本没有响应很难调试。这可能是导致某些失败的原因,还是 Google 的 XMPP 实施没有提供正确的响应。
更新:
我在下面回答,基本上,是的,Google 无法处理编码的 @ 字符,因为它不支持 XMPP 扩展。
【问题讨论】:
标签: xmpp google-cloud-messaging agsxmpp