我编写了一个Windows 7.5手机应用程序,用于注册MPNS的平铺和吐司推送通知。我有所有的基础设施工作,电话注册MPNS。我在手机上本地保存了ChannelUri,然后将ChannelUri发布到我网站上的一个休息服务端点,该端点记录了设备/ ChannelUri。我可以从网络服务发送烤面包和平铺消息,并在手机上接收它们没有任何问题。如果应用程序正在运行,我可以捕获ShellToastNotificationReceived事件并可以读取推送通知详细信息,并将消息保存到应用程序中的本地数据库,并且消息也会在列表框中显示给用户。除了必须注册ChannelUri之外,系统与我的网站断开连接,并且我需要的所有数据都包含在通知中。
我的问题是,当应用程序被逻辑删除并且我发送推送通知时,我看到手机操作系统显示的Toast消息,如果我点击吐司,我已经在我的应用程序中放置了指向页面的URI - 启动应用程序,我可以捕获消息中的所有数据,并可以将其再次保存到数据库。但是如果应用程序被逻辑删除并且用户错过了toast我无法保存该消息它将丢失,除非我写一些逻辑返回到我的服务器并检查我在本地的消息是否与它发送的消息匹配。我是否遗漏了某些内容,或者当我的服务器重新启动并与我的服务器重新同步以获取用户可能错过的任何Toast推送通知时,我将不得不对我的服务器进行检查。
由于
答案 0 :(得分:6)
当应用程序未运行或被逻辑删除时收到推送通知时,如果没有对错过的吐司进行任何操作,则无法处理数据。您可能需要在服务器上使用确认逻辑来检查是否收到消息。