Я регистрирую два разных шаблона для своих клиентов WindowsPhone (один для обновления плитки и один для тостов).
Есть ли возможность отправить только одно уведомление, и мои клиенты WindowsPhone получат всплывающее уведомление и обновление плитки?
Я нашел ветка форума на msdn со следующим сообщением (в ответе):
Если вы вызовете метод SendTemplateNotificationAsync({"свойства шаблона"}, "en-us")) таким образом, это нацелит всплывающее уведомление и разместит оба уведомления на устройстве A.
Но это не сработает для меня. Мой клиент получает только обновление плитки, а не всплывающее уведомление.
Я также попробовал шаблон как в xml (плитка, так и тост). Найдено здесь. Но это тоже не сработает (на клиенте виден только тост).
Я знаю, что могу работать с дополнительными тегами (такими как «тост» и «плитка») и отправлять уведомления, как в следующем фрагменте кода. Но я думаю, что это уродливое решение:
await hubClient.SendTemplateNotificationAsync(content, tags + " && toast");
await hubClient.SendTemplateNotificationAsync(content, tags + " && tile");
Любая помощь приветствуется. Спасибо
Изменить: Мои шаблоны и мои свойства уведомлений:
Характеристики:
var content = new Dictionary<string, string>
{
{"title_en", "English title"},
{"message_en", "English content"},
{"title_de", "Deutscher Titel"},
{"message_de", "Deutscher Inhalt"},
{"url", url},
{"count", count.ToString()}
};
Toast-шаблон (WindowsPhone)
String.Format("<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<wp:Notification xmlns:wp=\"WPNotification\">" +
"<wp:Toast>" +
"<wp:Text1>$(title_{0})</wp:Text1>" +
"<wp:Text2>$(message_{0})</wp:Text2>" +
"<wp:Param>$(url)</wp:Param>" +
"</wp:Toast>" +
"</wp:Notification>", language);
Шаблон плитки (WindowsPhone)
String.Format("<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
"<wp:Notification xmlns:wp=\"WPNotification\">" +
"<wp:Tile Template=\"IconicTile\">" +
"<wp:SmallIconImage>Small.png</wp:SmallIconImage>" +
"<wp:IconImage>Large.png</wp:IconImage>" +
"<wp:WideContent1>$(title_{0})</wp:WideContent1>" +
"<wp:WideContent2>$(message_{0})</wp:WideContent2>" +
"<wp:WideContent3 Action=\"Clear\"></wp:WideContent3>" +
"<wp:Count>$(count)</wp:Count>" +
"<wp:Title>AppName</wp:Title>" +
"</wp:Tile>" +
"</wp:Notification>", language)