2012-08-08 78 views
2

我想实现在Windows Phone的推送通知7.5Windows Phone 7的推送通知时,应用程序没有运行

我绑定在App.xaml中的channelUri当应用程序启动。 然后,我可以将我的应用切换到背景,并根据Uri接收Toast通知。

但这需要我先去应用程序,然后将其设置为背景。

我可以在没有运行应用程序的情况下收到烤面包吗?那是channelUri没有绑定的时候。

这是Windows Phone 7的默认行为还是我在这里错过了一个观点?

如果这是行为,应用程序未运行时如何向手机发送某种形式的通知/信息?我看过这Windows Phone 7.5 - Push Notifications when app is tombstoned

更新:

  1. 我知道信道是活动长达30天,是它一样,当我只用模拟器?
  2. 应用程序应该与信道相关联,以便接收通知,甚至当应用程序没有运行,如果通知通道被激活,那么应用程序将接收敬酒

回答

2

我认为你缺少点。为了接收Toast通知,您不必在后台运行应用程序。 Toast(和Tile通知)用于应用程序完全不运行时。因此,启动应用程序以获取推送URI,然后将其发送到服务。从理论上讲,30天后你不会再需要一个。当涉及到仿真器时,只要仿真器正在运行,它就可以使用。一旦你关闭/关闭模拟器,push-uri消失了,你需要重新请求一个。 (一般来说,没有什么是保存在模拟器等关闭和打开模拟器就像是得到一个新的设备每次。)

希望这有助于

+0

那是第30天肯定算的,所以信道总是30天内可靠还是会在此之前过期? – 2012-08-09 08:17:39

+1

不,这不是一个确定的数字。所以,从客户服务编程的角度来看,您应该检测到这种情况。换句话说,如果您无法从设备中检索uri,则该应用必须识别该请求并请求另一个uri。然后应该使用一个标识符将该URI发送到该服务,以便在服务器端可以将服务交付给您的应用程序。标识符的示例可以是您的设备ID或该服务上用户的用户名。此外,在服务端,您可以检测到POST的响应头(X-SubscriptionStatus)中的通道URI到期时间。 – 2012-08-09 08:48:58

相关问题