Windows phone 8 推送通知

Posted

技术标签:

【中文标题】Windows phone 8 推送通知【英文标题】:Windows phone 8 push notifications 【发布时间】:2014-09-17 13:08:30 【问题描述】:

我对 Windows phone 8 中的推送通知有疑问。 据我了解,推送通知分为三种类型:

    Toast 通知。 平铺通知。 原始通知。

所以,在我看来:

如果应用程序正在运行,并在前台打开:

    Toast 不会显示,但我可以处理它的事件并做一些事情。 图块将自动更新 原始通知必须由我处理。 (问题一:没有后台任务可以吗?

如果应用现在正在运行,但已暂停:

    Toast 将按原样显示,在我的应用中没有任何事件处理,只有“BindToToast()” Tile 会更新,没有任何事件处理,只有“BindToTile()” 原始通知必须由后台任务处理。

如果应用没有打开:

    如果在之前的启动中调用了“BindToToast()”,Toast 将自动显示。 如果在之前的启动中调用了“BindToTile()”,Tile 将自动更新, 问题 2:原始通知呢?这里怎么处理?

【问题讨论】:

【参考方案1】:

我认为情况如下:

Toast 通知仅在应用未运行时显示,但在运行时可被拦截

无论应用程序运行如何,磁贴通知始终更新磁贴

原始通知只能在运行时由应用程序处理。

Toast/raw 通知通常不能由 Windows Phone 8.0 中的后台任务处理。但也许有一个黑客可以解决这个问题。见Windows Phone 8 notifications and background tasks和Windows Phone 8 Background Task with notifications

在 Windows phone 8.1 中,很可能创建一个在收到通知时调用的后台任务,因此通知可以由后台任务处理。

【讨论】:

以上是关于Windows phone 8 推送通知的主要内容,如果未能解决你的问题,请参考以下文章

Windows Phone 8 上的推送通知处理程序

通过asp.net windows phone 8发送推送通知

Windows Phone 8 推送通知 (MPNS) 服务器代码

使用 Azure 在 Windows phone 8 中推送通知

如何使用 Azure 在 Windows Phone 8 中为特定设备发送推送通知

Windows Phone 8 推送通知 - 不支持的频道 uri