C# 应用程序处于前景时的Toast通知

C# 应用程序处于前景时的Toast通知,c#,background,notifications,windows-phone-7.1,foreground,C#,Background,Notifications,Windows Phone 7.1,Foreground,我有一个应用程序与BG代理的实施。如果BG代理识别出任何升级可用性,那么它将通过toast通知将其通知给用户。对此我有一个疑问。场景是这样的,如果应用程序退出并在BG中运行,则会显示toast通知(TN),一切都很顺利。但是,如果应用程序在FG和BG中运行,并且BG有一些东西要通知用户,则不会显示TN,尽管所有内容都记录在日志文件中,但设备UI上没有显示任何内容。这正常吗?还是应该做点什么?另外,是否有方法检测我的应用程序是否在FG中运行?如果是这样,我不想启动BG任务,这可以实现吗 感谢所有的

我有一个应用程序与BG代理的实施。如果BG代理识别出任何升级可用性,那么它将通过toast通知将其通知给用户。对此我有一个疑问。场景是这样的,如果应用程序退出并在BG中运行,则会显示toast通知(TN),一切都很顺利。但是,如果应用程序在FG和BG中运行,并且BG有一些东西要通知用户,则不会显示TN,尽管所有内容都记录在日志文件中,但设备UI上没有显示任何内容。这正常吗?还是应该做点什么?另外,是否有方法检测我的应用程序是否在FG中运行?如果是这样,我不想启动BG任务,这可以实现吗

感谢所有的回答和建议


谢谢。

您可以使用
Thread.CurrentThread.IsBackground
检查它是在后台还是前台,并相应地进行操作。您也可以根据需要使用
Thread.CurrentThread.IsAlive
。您可以在此处找到有用的信息:

如果应用程序处于后台,请使用
Toast通知
,否则请使用
原始通知
。您可以从以下位置了解原始通知:

总之,当应用程序位于后台时,您可以使用toast通知,当应用程序位于后台时,可以使用原始通知

我还没试过这个,但我想如果我没有错的话,它应该会起作用。在这里还有一个类似的问题

如果线程选项起作用,那么它就很好了,否则您也可以尝试使用上面提到的应用程序状态属性来检查和跟踪应用程序的状态,即是否为BG或FG