我有问题(实际上不是一个问题,而是很多问题),
我正在开发 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。
我们明天会看到接下来会发生什么。