标签: background-transfer

带有POST方法和参数的BackgroundTransferService

我想上传一个文件(录像档案)到服务器通过 BackgroundTransferService.

我的问题是,我还想发送2个参数和文件(POST请求).

那么,使用BackgroundTransferServiceAPI时是否可以发送参数和文件上传..?

代码BackgroundTransferService:

        BackgroundTransferRequest req = new BackgroundTransferRequest(new Uri("ServerURL", UriKind.Absolute));
        req.Method = "POST";
        req.TransferPreferences = TransferPreferences.AllowCellularAndBattery;

        string uploadLocationPath = "/Shared/Transfers/myVideoFile.mp4";
        string downloadLocationPath = "/Shared/Transfers/response.txt";

        req.UploadLocation = new Uri(uploadLocationPath, UriKind.Relative);
        req.DownloadLocation = new Uri(downloadLocationPath, UriKind.Relative);

        req.TransferProgressChanged += req_TransferProgressChanged;
        req.TransferStatusChanged += req_TransferStatusChanged;

        try
        {
            BackgroundTransferService.Add(req);
        }
        catch (Exception ex)
        {
            MessageBox.Show("Unable to add video to upload queue.\nPlease try again later.", App.appName, MessageBoxButton.OK);
        }
Run Code Online (Sandbox Code Playgroud)

请询问是否有人想要更多信息并且无法理解我的问题.

我想快速回复.是或否......如果是,则如何......?

c# file-upload windows-phone background-transfer windows-phone-8

6
推荐指数
1
解决办法
319
查看次数

Windows Update 1703之后的UWP后台传输异常0x80072EE4

我有一个带有后台传输的Windows应用商店应用程序 来下载内容,它一直运行到现在.但是,一些客户报告说,在他们将PC更新为Creators Update(1703)之后,下载停止工作会产生错误HRESULT: 0x80072EE4(由我的应用程序从异常中翻译).

有类似的报告:HRESULT 0x80072EE4在使用BackgroundDownloader但在我的情况下,它发生在Windows Update 1703之后.奇怪的是,这个问题不会发生在我的开发者PC上,其中已经安装了相同的更新.

有没有人对问题的根源有任何线索或找到任何解决方法?

exception background-transfer uwp creators-update

6
推荐指数
1
解决办法
241
查看次数

是否有能力上传BackgroundTransferRequest的结果?

我正在使用BackgroundTransferRequestWP8应用程序将文件上传到我的服务器.服务器接收文件并发送回复,其中包含有关上传文件的一些有用信息.我怎样才能获得这些信息?

似乎没有API(羞耻地).可能,我错过了一些东西.

请注意,request.BytesReceived属性返回99个字节,看起来像请求知道从服务器返回一些数据,但我不知道如何获取它.

windows-phone background-transfer windows-phone-8

5
推荐指数
1
解决办法
369
查看次数

后台下载器窗口8多个文件

我有一些文件需要在app启动时下载(首次运行).我在Windows 8中使用Background Downloader.这就是我使用它的方式:

BackgroundDownloader downloader = new BackgroundDownloader();

List<DownloadOperation> operations = new List<DownloadOperation>();
foreach (FileInfo info in infoFiles)
{
    Windows.Storage.ApplicationData.Current.LocalFolder;
    foreach (string folder in info.Folders)
    {
        currentFolder = await currentFolder.CreateFolderAsync(folder, CreationCollisionOption.OpenIfExists);       
    }
    //folder hierarchy created, save the file
    StorageFile file = await currentFolder.CreateFileAsync(info.FileName, CreationCollisionOption.ReplaceExisting);

    DownloadOperation op = downloader.CreateDownload(new Uri(info.Url), file);
    activeDownloads.Add(op);
    operations.Add(op);
}


foreach (DownloadOperation download in operations)
{
  //start downloads
  await HandleDownloadAsync(download, true);
}
Run Code Online (Sandbox Code Playgroud)

当我尝试使用时,BackgroundDownloader.GetCurrentDownloadsAsync();我只发现了一个后台下载.所以我删除了上面的await运算符,让它们异步启动.

但是我需要知道所有文件何时完成,所以我可以设置进度条.

我需要一种方法来下载多个文件,发现所有文件BackgroundDownloader.GetCurrentDownloadsAsync();并知道所有下载完成的时间.

  private async Task HandleDownloadAsync(DownloadOperation download, bool start)
    { …
Run Code Online (Sandbox Code Playgroud)

c# background-transfer windows-store-apps

5
推荐指数
1
解决办法
5283
查看次数

Windows Phone 8.1 - BackgroundUpload的BackgroundTransferStatus

我正在使用BackgroundUploader将图像/视频从CameraRoll上传到存储服务.这是Windows Phone 8.1上的WinRT应用程序

这很有效,直到有大量文件要上传.我期待有关于电池和CPU使用的问题,所以我正在检查所有UploadOperations的BackgroungTransferStatus,并且如果我们遇到PausedSystemPolicy状态则打算向用户显示消息.如果手机决定暂停上传,这是预期状态.

我的问题是,虽然上传肯定会暂停(它不发送http帖子),但状态继续说"正在运行".此外,取消上传操作无效.它仍然继续坐在那里说"正在运行"没有发送字节并且没有收到响应.最终,它确实恢复上传,但我们似乎很快达到了问题的任何限制,我们再次暂停.我理解限制的必要性,这是我关心的用户体验.

为什么暂停的上传仍处于"正在运行"状态?有没有人经历过类似的事?

background-transfer windows-phone-8.1

5
推荐指数
1
解决办法
526
查看次数