【发布时间】:2011-09-09 22:21:32
【问题描述】:
小问题。 我现在有一个 mango windows phone 7 应用程序,它将在启动时联系网络服务并使用一些状态文本更新固定到主屏幕的磁贴(我在标题文本上添加了一个数字)。
我想安排这个,所以用户不需要打开应用程序......但是最好的选择是什么?后台任务?
问题出在 Web 服务以及我猜这些代理在时间和内存上的限制?
有什么想法建议吗?
【问题讨论】:
标签: c# windows-phone-7 tiles
小问题。 我现在有一个 mango windows phone 7 应用程序,它将在启动时联系网络服务并使用一些状态文本更新固定到主屏幕的磁贴(我在标题文本上添加了一个数字)。
我想安排这个,所以用户不需要打开应用程序......但是最好的选择是什么?后台任务?
问题出在 Web 服务以及我猜这些代理在时间和内存上的限制?
有什么想法建议吗?
【问题讨论】:
标签: c# windows-phone-7 tiles
您可以通过三种方式从后台更新动态磁贴:
首先是使用ShellTileSchedule 类。它允许您安排从远程 uri 更新您的实时磁贴图像。图像大小和加载时间有一些限制。如果系统多次无法加载图像,还可以安排作废。
第二种方法是使用push-notifications。它也有一些类似的限制。
第三种方法是使用后台代理。
没有“最佳选择”。选择取决于很多事情。例如 - 芒果即将上市,有可能一些用户会在几个月内得到它。如果您将应用程序更新为芒果版本 - 您将失去为您的应用程序发送 WP7.0 更新的能力。 以其他方式 - 推送通知和瓦片计划要求您在服务器端生成瓦片。如果您决定使用时间表 - 您应该绘制文本和数字作为可下载图像的一部分。
【讨论】:
oxilumin 的回答详细说明了您有哪些选择。
至于ShellTileSchedule 解决方案,我写了一篇文章,介绍如何使用您从网络服务请求的数据直接在手机上生成动态磁贴:
How To: Generate a custom live tile directly on the phone
如果您选择push-notifications 解决方案,您需要在您的网络服务上生成整个图块(173x173 像素的图像),并将新图像作为推送通知的一部分发送。
【讨论】: