DispatchTimer事件中的Windows运行时通知

利希霍芬

我有一个简单的xaml表单,当调用LoadState时,它将启用一个Dispatch Timer。当调度计时器触发时,它将检查服务中是否有新项目。如果新项目符合特定条件,它将消息添加到局部变量(最终绑定到列表视图),然后我们使用ToastNotification框架创建新的Toast。但是,我注意到的一件事是ToastNotifications似乎仅在应用程序聚焦时才起作用(当然,这很关键)。我认为这在一定程度上是有道理的,因为我的应用程序在未重点关注时已被暂停。

但是,我知道DispatchTimer是在应用程序暂停时执行的,因为我看到Web请求触发了该服务。这一定意味着我发送通知的电话以某种方式被推迟。从概念上我想,如果我的应用程序被暂停,我如何获得Toast通知来执行?我已经阅读了BackgroundTasks,但是这些仅响应系统事件。我真正想要的是我的应用程序可以轮询消息,无论其处于暂停状态,都可以在可能的情况下更新UI,并更新通知(无论应用程序是否被暂停)。

马特·海丁格

不幸的是,实现方案的唯一可靠方法是使用BackgroundTask,它可以每30分钟运行一次。DispatcherTimer需要UI线程,该线程仅在您的应用具有焦点时才运行。如果您发现网络请求不正常,则可能是由于其他一些异常所致,但是实际上,当您的应用被暂停时,不能保证进一步的用户代码得以运行-包括弹出一个祝酒词。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Windows运行时引发其他库中的事件

运行时创建的控件中的事件

侦听运行时创建的控件中的事件

Windows 10中的Windows运行时可激活类

在应用程序运行时如何在通知栏中显示“解析推送通知”?

在Windows中运行时CUDA性能下降

在Windows和Linux中衡量流程的运行时间

在Windows窗体中更改语言运行时

在KVM中运行时如何提高Windows性能

在MS Windows中运行时缺少gtk +图标

如何在Windows中增加JVM运行时内存

C ++ / WinRT Windows运行时组件中的继承

理论JavaScript事件运行时

从运行时创建的对象订阅事件

如何阻止其他单击事件在jQuery中已经运行时运行?

当应用打开或在后台运行时,Phonegap Firebase推送通知不会触发事件侦听器

App在后台Swift 2.0中运行时发送本地通知

当应用程序在后台运行时,从通知中打开片段

当应用程序未运行时,无法从通知中调用活动方法

当Firebase中的应用程序在后台运行时如何处理通知

在运行时更改交互式通知中的动作标题

当应用未运行时,在PendingIntent中带有Service的通知操作不起作用

在单击事件中运行时调用对象函数未定义

在运行时Excel VBA中为复选框创建事件

无法在JavaScript中在运行时获取按钮onClick事件的功能

如何在.net core 2.2中使用EventListener(运行时事件)

使JavaScript onClientClick事件在IE10中运行时遇到问题

Windows运行时中的页面状态

我们可以在运行时在 C# 中为运行时创建的控件创建多个事件吗