我面临一个奇怪的问题。我正在使用Windows phone 8.1 silverlight和Windows universal链接进行Toast通知。我能够在Windows Phone应用程序中获取Toast通知,它在链接中提到的Windows 8.1中几乎相同。但是Toast并没有在Windows 8.1中出现。
步骤: -
1 - >我已经从Package.appxmanifest
文件启用了Toast。
2 - >然后我在on_launched事件中的App.Xaml.cs中添加了这段代码,如上所述
显示注册成功,如链接
中所述private async void InitNotificationsAsync()
{
var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();
var hub = new NotificationHub("<hub name>", "<connection string with listen access>");
var result = await hub.RegisterNativeAsync(channel.Uri);
// Displays the registration ID so you know it was successful
if (result.RegistrationId != null)
{
var dialog = new MessageDialog("Registration successful: " + result.RegistrationId);
dialog.Commands.Add(new UICommand("OK"));
await dialog.ShowAsync();
}
}
3 - &gt;现在我从后端发送通知( Hub正在处理手机mpns通知)。
public static async void SendNotificationAsync()
{
NotificationHubClient hub = NotificationHubClient.CreateClientFromConnectionString("<connection string with full access>", "<hub name>");
var toast = @"<toast><visual><binding template=""ToastText01""><text id=""1"">Hello from a .NET App!</text></binding></visual></toast>";
await hub.SendWindowsNativeNotificationAsync(toast);
}
问题: - 你们有一个线索,为什么它不能在Windows 8.1中工作或我缺少什么。这是我正在经历的最简单的例子。任何帮助表示赞赏。
修改: - 这很有意思。
当我尝试从azure门户网站发送通知时。从DEBUG
的{{1}}标签中选择WNS toast然后显示错误。
My-NotificationHub
- Error
但是当我尝试发送The token obtained from the token provider is wrong
通知时,则没有错误。正如我已经提到的,它适用于MPNS
。
WP 8.1 silverlight MPNS toast
答案 0 :(得分:5)
Toast无法在模拟器上运行,如MSDN文档中所述:
注意通过测试Toast通知代码功能时 Microsoft Visual Studio,您必须使用本地计算机或 Windows x86,x64或Windows运行时上的远程计算机调试设置 机。您不能使用Visual Studio Simulator调试功能 选项 - 您的代码将在模拟器中编译和运行,但是吐司 不会出现。
来源:http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh868254.aspx
答案 1 :(得分:0)
如果我在Windows 8上正确记得,当我使用模拟器时,Toast通知不起作用。我不得不在我的计算机上部署我的Windows 8应用程序而不是模拟器,以便能够看到吐司通知。