从Windows通用应用程序发送Toast通知

3

我试图找到一种从Windows通用应用程序发送toast通知的方法。Azure文档确实提到了一种在控制台应用程序中执行此操作的方法。但是这不能满足我的使用情况,因为我想要从Windows通用应用程序发送toast通知。问题是,NuGet软件包 Microsoft.Azure.Service.Bus 与Windows商店或Windows Phone 8.1应用程序不兼容。

是否有任何Windows Azure库可以允许我从Windows通用应用程序发送toast通知?

3个回答

0
以下是两个基本示例:

示例1仅文本

const ToastTemplateType toastTemplate = ToastTemplateType.ToastText01;
var toastXml = ToastNotificationManager.GetTemplateContent(toastTemplate);

var toastTextElements = toastXml.GetElementsByTagName("text");
toastTextElements[0].AppendChild(toastXml.CreateTextNode("Hello World!"));

var toast = new ToastNotification(toastXml);
ToastNotificationManager.CreateToastNotifier().Show(toast);

样例2 文本和图片
const ToastTemplateType toastTemplate = ToastTemplateType.ToastImageAndText01;
var toastXml = ToastNotificationManager.GetTemplateContent(toastTemplate);

var toastTextElements = toastXml.GetElementsByTagName("text");
toastTextElements[0].AppendChild(toastXml.CreateTextNode("Hello World!"));

var toastImageAttributes = toastXml.GetElementsByTagName("image");
((XmlElement)toastImageAttributes[0]).SetAttribute("src", "https://istack.dev59.com/wzdIt.webp");

var toast = new ToastNotification(toastXml);
ToastNotificationManager.CreateToastNotifier().Show(toast);

1
我正在尝试将弹出通知从一个设备发送到大量其他设备。这个解决方案只会将通知发送到应用程序正在运行的设备。 - Stuart Smith
抱歉,关于“toast通知”和“推送通知”的问题不够清晰。 - rubStackOverflow

0

通常情况下,您不会从通用应用程序发送toast消息。您需要将toast发送到应用程序中,以让用户知道服务器上发生了某些事情。

如果您想要从应用程序向本地系统安排toast,则不需要使用Azure(或其他Web服务)。您可以直接使用计划通知来安排。请参阅快速入门:发送 toast 通知 (XAML)如何安排 toast 通知 (XAML)

如果您想要在其他地方推送通知,则可以设置Azure通知中心并通过HttpClient类连接其REST服务

通常情况下,您的应用程序将联系后端服务器以连接到通知中心。这可以使用Azure移动服务轻松设置。请参阅将推送通知添加到您的移动服务应用程序


谢谢您的回答,我想确认一下是否有来自MSFT的API我错过了。看起来没有...根据您的回答,我需要创建一个REST客户端或创建一个Web服务。 - Stuart Smith

-3
Toast通知是在屏幕上出现几秒钟的小弹窗。它们传达信息,并可以自定义甚至播放不同的声音。
有关更多信息,请参见Windows通用应用程序通知示例

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接