Windows 10应用程序DownloadOperation无法启动

Tar*_*ssa 6 c# xaml windows-10 windows-10-mobile

我试图在Windows 10通用应用程序上使用此代码下载文件:

await downloadOperation.StartAsync().AsTask(token, progressCallback);
Run Code Online (Sandbox Code Playgroud)

它在PC上工作但在移动设备上有时它不会开始下载,甚至在我重新启动移动设备之前都没有例外.这是系统中的错误还是我遗漏了什么?

编辑1:

任务的状态是"等待激活",所以它不会抛出异常.它只是等待,直到我重新启动手机才开始我总是尝试使用相同的网址,我在电脑上没有这个问题.这只是关于手机的.任务的属性如下:

Tar*_*ssa 3

我终于发现问题了。当我开始下载操作并关闭应用程序而不取消操作时,BackgroundDownloader 会保留下一个应用程序启动的操作。当下载操作的数量达到允许的最大同时操作数(我认为是5)时,下一个操作将在等待列表()上,直到前一个操作完成。所以当应用程序启动时我必须停止所有未完成的操作,如下所示:

Task.Run(async () =>
        {
            var downloads = await BackgroundDownloader.GetCurrentDownloadsAsync();
            foreach (var download in downloads)
            {
                CancellationTokenSource cts = new CancellationTokenSource();
                download.AttachAsync().AsTask(cts.Token);
                cts.Cancel();
            }
            var localFolder = ApplicationData.Current.LocalFolder;
            var files = await localFolder.GetFilesAsync();
            files = files.Where(x => x.Name.EndsWith("_")).ToList();
            foreach (StorageFile file in files)
            {
                await file.DeleteAsync(StorageDeleteOption.PermanentDelete);
            }
        });
Run Code Online (Sandbox Code Playgroud)