我使用Azure通知中心将通知推送到当前安装在IOS上的Phonegap应用程序。我也会发送到Android设备,但我的问题只是关于IOS。
我的问题是消息有时无法提供。如果我连续多次发送相同的通知,那么它可能只会提供50%的时间。
这是我发送通知的代码段:
private async Task SendNotificationTemplate(string message, string title = null, int? badgeCount = null, string pageId = null, int? itemId = null, IList<string> tags = null)
{
var hub = creatHubClient();
var notification = new Dictionary<string, string>();
if (string.IsNullOrEmpty(message))
throw new InvalidDataException("The message field is required for a notification");
notification.Add("message", message);
if (!string.IsNullOrEmpty(title))
notification.Add("alert_title", title);
if (!badgeCount.HasValue)
badgeCount = 1;
notification.Add("badge_number", badgeCount.ToString());
notification.Add("page_id", !string.IsNullOrEmpty(pageId) ? pageId : string.Empty);
notification.Add("id", itemId.HasValue ? itemId.ToString() : "0");
if (tags == null || tags.Count == 0)
{
var result = await hub.SendTemplateNotificationAsync(notification);
if (result.Success!=0)
{
_logger.Error("An error occurred when attempting to send a push notification:" + string.Join(",",result.Results.Select(r=>r.Outcome)));
}
}
else
{
var result = await hub.SendTemplateNotificationAsync(notification,tags);
if (result.Success != 0)
{
_logger.Error("An error occurred when attempting to send a push notification:" + string.Join(",", result.Results.Select(r => r.Outcome)));
}
}
}
在仪表板监视器中有一些APNS错误,但我怎样才能找出它们是什么?
我感谢任何帮助或建议,因为这里的不一致让我有点生气。我知道推送通知不能保证送达,但Apple提供的送货率必须比我得到的好。我知道我的客户不会像现在这样接受它!
以下是Azure Notification Hub Monitor信息中心的屏幕截图:
谢谢 约翰
答案 0 :(得分:0)