应用程序无法从ToastNotification操作正确运行

时间:2016-04-27 08:39:33

标签: notifications win-universal-app toast windows-10-universal

我尝试制作一个非常简单的演示,演示如何在 UWP 中使用后台任务和Toast通知。我是一个简单的任务,它是在网络连接更改时触发的,他的工作是显示一个简单的通知。它当然在操作系统中注册,在清单中选择,此任务运行良好。

我已经创建了一个软件包并在我的笔记本电脑上安装了应用程序,即使在应用程序未启动的时刻也可以运行。任务也有效。

唯一的问题是,当我点击"运行app"通知按钮,我想启动在前台运行的应用程序。它启动应用程序,但我唯一能看到的是我的应用程序的启动画面,没有其他事情发生。我看到了这个通知的MSDN教程,我的XML几乎是一样的。

我的XML通知内容:

<toast launch="app-defined-string">
  <visual>
    <binding template="ToastGeneric">
      <text>Test notification</text>
      <text>This is a simple toast notification</text>
      <image placement="AppLogoOverride" src="../Assets/icon.png"/>
    </binding>
  </visual>
  <actions>
    <action activationType="foreground" content="Run App" arguments="check" />
  </actions>
  <audio src="ms-winsoundevent:Notification.SMS" />
</toast>

更新

App.xaml.cs中唯一的修改部分:

protected override void OnActivated(IActivatedEventArgs args)
{
  if (args.Kind == ActivationKind.ToastNotification)
  {
    var toastArgs = (ToastNotificationActivatedEventArgs)args;
    ToastArg = toastArgs.Argument;
  }
}

1 个答案:

答案 0 :(得分:2)

您需要从OnActivated调用应用程序的初始化(OnLaunch方法中的内容)。在初始化时,请务必检查您的应用是否正在运行。