0

我在我的 Windows Phone 应用程序中使用后台任务来生成动态磁贴图像。为此,我下载了一张图片,将其保存到隔离存储中,然后设置动态磁贴以使用该图片。(我没有将动态磁贴设置为使用图像 url,因为我也在保存之前对其进行了修改)

我使用在 Windows Phone 8 上运行良好的 WebClient 来下载图片:

var wc = new WebClient();                
using (var stream = await wc.OpenReadTaskAsync(imageUri))
{
// Image modifications and saving
}

当我在应用程序的 WP7.8 版本中使用相同的代码时,它不起作用:如果代码是在应用程序运行时启动的,而不是在后台代理中启动,则更新动态磁贴。

当我调试后台代理时,代码只是停在 OpenReadTaskAsync 行上,没有抛出任何异常。

图片不大(小于400 x 400px,70kb),不明白为什么下载不了。

WP7.8 后台代理是否比 WP8 更受限制?你有什么解决办法吗?

谢谢

4

1 回答 1

0

NotifyComplete()您应该在后台代理中的调用上放置一个断点。我的猜测是它会在你的结束之前以某种方式被调用OpenReadTaskAsync,从而过早地结束代理。

于 2013-04-22T09:16:14.287 回答