BackgroundTransferService:它的操作有哪些细节?

时间:2011-08-06 00:48:05

标签: windows-phone-7 windows-phone-7.1 background-transfer

我通过BackgroundTransferService启动了5次上传(不同大小)。我对它的工作方式有以下问题:

  1. 似乎在模拟器上一次完成2次上传。这是它在实际设备上的工作原理吗?我可以通过编程方式更改此行为吗?
  2. 我可以按照我提交的顺序依赖上传内容吗?在我的测试中,我似乎得到了相互矛盾的结果。
  3. 当我在我的应用程序中检查BackgroundTransferService时,它是否包含来自其他应用程序的请求,还是仅包含我的应用程序?
  4. 从逻辑删除回来时,是否需要为所有BackgroundTransferRequest对象重新连接事件?怎么回来重新激活?
  5. 当我从BackgroundTransferService.Requests集合中删除事件时,是否需要从BackgroundTransferRequest中断开事件?
  6. 当我尝试上传不存在的URL:Port(在localhost上)时,TransferStatus报告为WaitingForNonVoiceBlockingNetwork。上传从未实际完成/失败。这是它在设备上的样子吗?我应该在遇到此TransferStatus时删除该请求吗?

1 个答案:

答案 0 :(得分:1)

  1. 您不能影响BTS的行为。如果您不喜欢它的工作方式,您可以将传输功能编写为您自己的应用程序的一部分,但是您必须自己处理在后台运行。

  2. 序列无法保证。

  3. BTS可能正在处理来自其他应用的请求,但您将无法查看详细信息。 Requests()只会返回您应用的详细信息。

  4. 当然,快速测试会告诉你这个。

  5. 这是一个很好的做法。

  6. 您是否在达到此情况时检查了TransferError属性?在其他情况下,这是一个完美的状态,因此您不应将此视为自动失败。