问题标签 [background-transfer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 后台应用程序设置已关闭的 BackgroundDownloader
我有一个使用 BackgroundDownloader 加载图片的 UWP Windows 8.1 应用程序。即使应用程序被暂停,我也需要能够下载。该应用程序在 Windows 8 和 Windows 10 上运行。在 Windows 10 中,可以禁用后台任务(设置 -> 隐私 -> 后台应用程序)。如果我的应用程序被阻止使用后台任务,下载将永远不会完成。
我尝试使用 BackgroundExecutionManager.GetAccessStatus() 来确定当前权限并在权限关闭时切换到 HttpClient。我遇到了两个问题:
- 我只能在下载之前获得当前状态。我没有找到任何方法从系统中获取通知或设置已更改的内容。
- 在 Windows 8 上,调用此方法会导致应用程序崩溃。
所以我有两个问题:
- 当 Windows 10 中的后台应用程序设置关闭时,有什么方法可以使用 BackgroundDownloader?(我想注意到,即使关闭设置,UWP Windows 10 应用程序中的相同代码也能正常工作)。
- 有什么方法可以在 Windows 8 和 10 上正常工作,以确定后台应用程序设置状态并在更改时做出反应?
我使用类似的代码
c# - UWP BackgroundTransfer (CreateDownload / GetCurrentDownloadsAsync) 异常
我正在为 UWP 使用BackgroundTransfer API,在我的开发过程中,我实现了远远超过传输限制(200)的目标,直到现在这还没有成为问题,因为 Windows 管理取消了超过限制的传输。但是现在,我永远无法通过BackgroundDownloader().CreateDownload()或调用BackgroundDownloader.GetCurrentDownloadsAsync()创建新的下载,因为这个异常总是发生:
WinRT 信息:已超出最大并发操作数的配额。在开始新的操作之前等待操作完成。
我已经尝试了很多方法来解决这个问题,但没有成功:
- 等待很长时间(几天)才能完成那些丢失的后台下载
- 多次重启电脑
- 终止/重置/卸载/重新安装我的应用程序(设置 -> 应用程序和功能)
- 为 Windows 应用商店应用程序运行疑难解答
- Windows更新
- 从 Register (regedit) 中清除我的应用程序的所有引用
我真的不想格式化/重新安装我的 Windows 10。:(
任何人都知道我该如何解决这个问题?
c# - UpoadOperationProgress 立即返回 bytessent = bytestosend
在我成功完成上传操作后,我现在正在尝试获得一些进度 UI。现在这是我的代码,包括进度回调和该回调的处理程序。
问题是当HandleUpload
被调用时,'bytessent' 和 'bytestosend' 立即相等,我的进度条设置为 100% 并在那里等到任务完成。我以前从未处理过进度回调,所以我可能做错了。
uwp - 如何取消下载操作?
对于下载,我使用 BackgroundDownloader。如果用户需要删除文件(状态=下载),我需要取消下载操作。但我没有在 DownloadOperation 的列表中找到方法。请告诉我,如何实施?
.net - UWP BackgroundTransfer StartAsync 但不等待任务完成
是否可以启动 DownloadOperation 但不等待下载完成?基本上,我想编写一个在 Timer 上运行的后台任务,安排一些下载并完成。处理进度/完成的代码计划在用户唤醒 UI 以监视进度时通过 AttachAsync 单独运行。
我的意思是我需要一种类似于老式方法的东西,它调用“void/Task RunDownload”,但没有义务订阅像 OnProgress/OnCompleted 这样的事件。
打电话
downloader.CreateDownload(uri, file).StartAsync()
没有等待是一个坏主意-我想确保操作已安排好,以后可以通过 BackgroundDownloader.GetCurrentDownloadsAsync() 访问