【问题标题】:Azure NotificationHubClient Breaking PNS HandleAzure NotificationHubClient 中断 PNS 句柄
【发布时间】:2014-06-30 17:58:25
【问题描述】:

我们正在尝试在 Microsoft.ServiceBus.Notifications 中使用 NotificationHubClient。我们遇到了一个奇怪的问题,下面的代码显示了我们在哪里注册设备,如下所示:

NotificationHubClient client = GetHubclient();

  var task = client.CreateMpnsNativeRegistrationAsync(deviceToken, tags);
  Task.WaitAll(task);

这可以很好地注册设备,如果我们从 azure 门户调试页面发送测试 toast 消息,它会毫无问题地通过 windows phone。但是,如果我们调用以下代码:

var sentTask = client.SendMpnsNativeNotificationAsync(GetPayload());
Task.WaitAll(sentTask);


private static string GetPayload()
{
  return "<wp:Notification xmlns:wp=\"WPNotification\"><wp:Toast><wp:Text1>Great News</wp:Text1><wp:Text2>Great News</wp:Text2></wp:Toast></wp:Notification>";
}

手机上没有收到 toast 通知,如果我们然后尝试从 azure 门户的调试页面再次发送测试 toast 通知,它不再起作用,并显示以下错误:

注册的推送通知系统句柄无效

这没有任何意义,我们启用了 testSend 并且代码中没有从客户端返回任何错误,实际上它表示第一次一切都成功,即使这似乎破坏了 PNS 句柄。

以前有人遇到过这种情况吗?

【问题讨论】:

    标签: c# azure push-notification azureservicebus mpns


    【解决方案1】:

    事实证明,如果缺少 Xml 声明:

    <?xml version="1.0" encoding="utf-8"?>
    

    然后,您将无法再向您尝试发送推送通知的任何手机发送推送通知,因为它已失效。这看起来很糟糕,如果有效负载无效,请确保不要发送通知,但为什么要使 PNS 无效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-07
      • 1970-01-01
      • 2014-09-03
      • 2020-05-27
      • 1970-01-01
      • 1970-01-01
      • 2020-07-08
      • 1970-01-01
      相关资源
      最近更新 更多