1

我修改了别名示例代码:

    [request addRequestHeader: @"Content-Type" value: @"application/json"];
    [request appendPostData:[[NSString stringWithFormat: @"{\"alias\": \"%@\"}", self.deviceAlias]
                          dataUsingEncoding:NSUTF8StringEncoding]];

到:

[request addRequestHeader: @"Content-Type" value: @"application/json"];
[request appendPostData:[[NSString stringWithFormat: @"{\"tags\": \"%@\"}", offsetStr]
                                                 dataUsingEncoding:NSUTF8StringEncoding]];

offsetStr 是一个包含时区偏移量的字符串(可以是 -12 到 12 之间的任何数字)。

出于某种原因,Urban Airship 将字符串中的每个字符都变成了自己的标签。

我试图用相同的结果替换-字符串。neg

怎么了?

4

1 回答 1

4

问题是“标签”应该是一个列表,而不是单个值。通过值周围的方括号,你会没事的。

[request addRequestHeader: @"Content-Type" value: @"application/json"];
[request appendPostData:[[NSString stringWithFormat: @"{\"tags\": [\"%@\]"}", offsetStr]
                                             dataUsingEncoding:NSUTF8StringEncoding]];

但是如果你想在客户端编码 JSON,你真的应该使用 JSON 库,比如 json-framework 或 TouchJSON。

于 2010-04-11T17:34:02.957 回答