8

我有问题(实际上不是一个问题,而是很多问题)

我正在开发 Windows Phone 8 应用程序,它使用 BackgroundTransferService 传输录制的 wav 文件,在 HTC 8S 上工作几乎正常,但在诺基亚 Lumia 920 上看起来很奇怪,它有一些无法理解的上传限制,等于 0.5MB 正好 512 KB,有 WiFi它似乎工作正常,但这个问题是通过蜂窝。

var transferRequest = new BackgroundTransferRequest(new Uri(url, UriKind.Absolute));
transferRequest.Tag = DateTime.Now.ToString(CultureInfo.InvariantCulture);
transferRequest.Method = "POST";
transferRequest.UploadLocation = new Uri(defect.VoiceRecordFileName, UriKind.Relative);
transferRequest.TransferPreferences = TransferPreferences.AllowCellularAndBattery;

transferRequest.Headers.Add("Content-Type", "audio/wav");

transferRequest.TransferStatusChanged += new EventHandler<BackgroundTransferEventArgs>(transferRequest_TransferStatusChanged);
transferRequest.TransferProgressChanged += new EventHandler<BackgroundTransferEventArgs>(transferRequest_TransferProgressChanged);

BackgroundTransferService.Add(transferRequest);

当我达到 TotalBytesSent = 512KB 它停止上传

我也检查这个

var tmp = NetworkInformation.GetInternetConnectionProfile();
var cost = tmp.GetConnectionCost();
var type = cost.NetworkCostType;

一切似乎都很好

编辑:

服务器端的收入仅为 380000 字节 +/-5 KB

有时,在上传文件的 10 次失败启动(仅发送 380KB 等)之后,它会突然上传:D。有时我不在办公室,它第一次可以完美运行,而其他时候从不发送。

它完全不可预测的事情

解决方案:

问题是服务器端...我有通用处理程序来保存此文件而不支持 Range 标头(我认为)。当我将我的项目更改为受本教程启发/复制的“Asp.NET Web Api 项目”时

它昨天不工作,但今天它意外地开始工作:D Crazy Nokia 和.NET。

我们明天会看到接下来会发生什么。

4

1 回答 1

0

正如IukasChudy所说,他的问题的解决方案是

问题是服务器端...我有通用处理程序来保存此文件而不支持 Range 标头(我认为)。当我将我的项目更改为受本教程启发/复制的“Asp.NET Web Api 项目”时

它昨天不工作,但今天它意外地开始工作:D Crazy Nokia 和.NET。

我们明天会看到接下来会发生什么。

PS我不喜欢用其他人的内容写答案,但我讨厌已经解决的未回答问题。

于 2015-08-20T23:29:32.183 回答