后台下载器,下载操作赢得';无法在UWP Windows10中启动?

后台下载器,下载操作赢得';无法在UWP Windows10中启动?,windows,uwp,uwp-xaml,Windows,Uwp,Uwp Xaml,我想使用后台下载程序下载文件。 我试过的是什么 FolderPicker folderPicker = new FolderPicker(); folderPicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary; folderPicker.ViewMode = PickerViewMode.Thumbnail; folderP

我想使用后台下载程序下载文件。 我试过的是什么

            FolderPicker folderPicker = new FolderPicker();
            folderPicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary;
            folderPicker.ViewMode = PickerViewMode.Thumbnail;
            folderPicker.FileTypeFilter.Add("*");
            StorageFolder storgaeFolder = await folderPicker.PickSingleFolderAsync();
            if (storgaeFolder != null)
            {
                StorageFile file = await storgaeFolder.CreateFileAsync("newnow.jpeg", CreationCollisionOption.GenerateUniqueName);
                BackgroundDownloader backgroundDownloader = new BackgroundDownloader();
                DownloadOperation downloadOperation = backgroundDownloader.CreateDownload(new Uri("https://www.google.com/url?sa=i&url=https%3A%2F%2Fwallpapercave.com%2Ffull-hd-wallpaper-downlord&psig=AOvVaw2_UZ_HNVNVr6fJelpyg2-S&ust=1622265707226000&source=images&cd=vfe&ved=0CAIQjRxqFwoTCOCRzOzQ6_ACFQAAAAAdAAAAABAQ"), file);
                downloadOperation.Priority = BackgroundTransferPriority.High;
                Progress<DownloadOperation> progress = new Progress<DownloadOperation>(progressChanged);
                CancellationTokenSource cancellationToken = new CancellationTokenSource();
                try
                {
                    await downloadOperation.StartAsync().AsTask(cancellationToken.Token, progress);
                    string xx = null;
                }
                catch (TaskCanceledException)
                {
                    await downloadOperation.ResultFile.DeleteAsync();
                    downloadOperation = null;
                }
            }
           private void progressChanged(DownloadOperation downloadOperation)
          {
            int progress = (int)(100 * ((double)downloadOperation.Progress.BytesReceived /(double)downloadOperation.Progress.TotalBytesToReceive));
            switch (downloadOperation.Progress.Status)
            {
                 case BackgroundTransferStatus.Running:
                {
                    break;
                }
                case BackgroundTransferStatus.PausedByApplication:
                {
                    break;
                }
                case BackgroundTransferStatus.PausedCostedNetwork:
                {
                    break;
                }
                case BackgroundTransferStatus.PausedNoNetwork:
                {
                    break;
                }
                case BackgroundTransferStatus.Error:
                {
                    break;
                }
                case BackgroundTransferStatus.Completed:
                {
                    break;
                }
                case BackgroundTransferStatus.Canceled:
                {
                    break;
                }
                default:
                {
                    break;
                }
        }
        if (progress >= 100)
        {
            downloadOperation = null;
        }
        
      }
FolderPicker FolderPicker=new FolderPicker();
folderPicker.SuggestedStartLocation=PickerLocationId.DocumentsLibrary;
folderPicker.ViewMode=PickerViewMode.Thumbnail;
folderPicker.FileTypeFilter.Add(“*”);
StorageFolder storgaeFolder=等待folderPicker.PickSingleFolderAsync();
if(storgaeFolder!=null)
{
StorageFile file=wait storgaeFolder.CreateFileAsync(“newnow.jpeg”,CreationCollisionOption.GenerateUniqueName);
BackgroundDownloader BackgroundDownloader=新的BackgroundDownloader();
DownloadOperation DownloadOperation=backgroundDownloader.CreateDownload(新Uri(“https://www.google.com/url?sa=i&url=https%3A%2F%2Fwallpapercave.com%2Ffull-高清壁纸downlord&psig=AOvVaw2_UZ_HNVNVNR6FJELPYG2-S&ust=162226570726000&source=images&cd=vfe&ved=0caiqjrxqfwotcorzoq6_acfqaaaaaaaaaaaabaq),文件);
downloadOperation.Priority=BackgroundTransferPriority.High;
进度=新进度(进度已更改);
CancellationTokenSource cancellationToken=新的CancellationTokenSource();
尝试
{
wait downloadOperation.StartAsync().AsTask(cancellationToken.Token,progress);
字符串xx=null;
}
捕获(TaskCanceledException)
{
等待downloadOperation.ResultFile.DeleteAsync();
downloadOperation=null;
}
}
私有void progressChanged(下载操作下载操作)
{
int progress=(int)(100*((double)downloadOperation.progress.BytesReceived/(double)downloadOperation.progress.TotalBytesToReceive));
开关(下载操作.进度.状态)
{
案例背景传输状态。正在运行:
{
打破
}
案例背景TransferStatus.PausedByApplication:
{
打破
}
案例背景TransferStatus.PausedCostedNetwork:
{
打破
}
案例背景TransferStatus.PausedNonework:
{
打破
}
案例背景传输状态。错误:
{
打破
}
案例背景转移状态。已完成:
{
打破
}
案例背景转移状态。已取消:
{
打破
}
违约:
{
打破
}
}
如果(进度>=100)
{
downloadOperation=null;
}
}

执行在第-->Wait downloadOperation.StartAsync()行停止/暂停。程序不会在此行之后运行,下载操作也不会通过任何BackgrowndTransferStatus或异常。我不知道为什么代码不会在该行之后运行。

是否检查了网络是否可用?你有没有用官方代码测试过,我检查过你的uri,看起来不能直接下载。哦!很抱歉使用此url“”是否使用官方代码示例进行了测试?我使用上述代码制作示例,它可以下载带有注释uri的文件。