无法向Azure移动服务上的单个iOS用户发送推送通知

时间:2014-06-12 00:10:08

标签: ios azure-mobile-services

我在Azure上设置了移动服务,并使用推送通知权限上传了开发证书。我正在使用单声道触摸从应用程序获取设备令牌并向其发送请求。插入项目时,我想向客户端发送推送,但在日志中我一直收到此错误

{ [Error: 400 - Invalid expression: '568d4f52 615ee9.......

其中表达式是我的设备令牌。如果我转到表格,我可以看到设备令牌与iOS应用程序中生成的设备令牌匹配。我确实将移动服务升级到增强型推送,但找不到任何如何推送给单个用户的示例。在我的代码中我有

request.execute();
push.apns.send(item.pushNotificationHandle, {
                    alert : 'testing',
                    payload: { text1: 'inner text' } 
                }, {
                    error: function(error){
                        console.error(error);
                    }
                });

Azure网站上的文档似乎变得非常陈旧,所以我不知道错误在哪里以及它应该如何不同。看看他们的服务器参考文档,我不知道为什么会失败

http://msdn.microsoft.com/en-US/library/azure/jj839711.aspx#send

有没有人有这方面的经验?我已经注销了“item.pushNotificationHandle”,它是一个符合预期的字符串(在表中匹配)

1 个答案:

答案 0 :(得分:0)

感谢您指出尚未更新的文档。

请参阅此文档,了解几乎准确的push.apns推送版本:http://dl.windowsazure.com/nodedocs/ApnsService.html

你可以看到send方法的第一个成员是标签。

要使用增强型推送定位单个用户,您应该为该用户添加用户标签的唯一ID。然后,您将通知发送到该特定用户的标签。 (此功能也可用于发送到子集用户组。)