gpt4 book ai didi

android - GCM XMPP 数据包中是否可能有非字符串值?

转载 作者:行者123 更新时间:2023-11-30 03:21:27 25 4
gpt4 key购买 nike

我有一个 python GCM 服务器(已列入白名单)可以很好地从我的 android 应用程序接收消息,直到我在数据包中包含字符串以外的任何内容,在这种情况下,我只能在服务器上获取字符串值。

例如,我的客户端发送一条消息,其中包含一个名为 data 的包,其中添加了一个字符串和一个 int,如下所示:

data.putString("MSG_ID", ALARM_ID);
data.putInt("AA", 1);

我的服务器读取并打印如下:

if gcm:
gcm_json = gcm[0].getData()
msg = json.loads(gcm_json)
print msg

输出是:

{u'category': u'xxxAPPNAMExxxx', u'from': u'xxxxGCMID', u'data': {u'MSG_ID': u'alarm'}, u'message_id': u'1'}

最佳答案

经过更多的阅读,我发现了我在前几遍通读时一定遗漏了什么:

public void send (String to, String msgId, Bundle data)

Send an upstream ("device to cloud") message. You can only use the upstream feature if your GCM implementation uses the XMPP-based Cloud Connection Server. The message will be queued if we don't have an active connection for the max interval.

Parameters to string identifying the receiver of the message. For GCM project IDs the value is SENDER_ID@gcm.googleapis.com. The SENDER_ID should be one of the sender IDs used in register(). msgId ID of the message. This is generated by the application. It must be unique for each message. This allows error callbacks and debugging. data key/value pairs to be sent. Values must be String—any other type will be ignored.

所以 TLDR;只允许使用字符串。

关于android - GCM XMPP 数据包中是否可能有非字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19063623/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com