我的一个爱好应用程序使用SQLite后端来存储应用程序数据。设置应用程序,以便用户可以单击典型的<!>“检查更新<!>”;按钮,它将查询Web服务以查看更新是否可用。如果是,则用户单击<!>“更新<!>”;按钮并下载新数据库(通过HTTP),然后将其安装在应用程序中。此过程目前是<!>“modal <!>”;因为在下载和安装完成之前,用户不能在应用程序中执行任何其他操作。

我正在努力更新应用程序,我想要做的一件事是让这个更新过程发生在幕后,ala Windows Update。当应用程序启动时,将查询服务,如果有更新,则会自动下载,但在后台,以便用户可以继续工作。下载完成后,系统将提示用户安装更新。

我已经广泛研究了 BITS ,即使我迄今没有看到使用该技术的API,我已经看到了一些示例代码,并相信我可以使它工作。

但这是接近<!>背景更新<!>的最佳选择吗?对于数据库,还是有其他一些解决方案/方法?

有帮助吗?

解决方案

如果您只在MS Windows上运行,并且您的客户正在使用足够新版本的操作系统来支持BITS,那么我认为您当然应该利用已经内置在平台中的功能,而不是做其他人的事情。并编写自己的后台更新检查程序,它位于我的任务栏通知区域并不必要地使用系统资源。

关于BITS的信息:

关于BITS

BITS参考

后台智能转移服务,来自维基百科

其他提示

我是Windows中BITS团队的PM - 是的,当您需要以对用户友好的方式下载(或上传)数据时,BITS技术很适合。 BITS试图小心占用网络带宽,当前电源状态和网络成本,并会在失败时自动重试下载。我们还在GitHub上为每个使用C#编程的人创建了一个新的示例 BITS Manager 程序和.NET!

这真的感觉你应该考虑使用Sync Framework http:// msdn。 microsoft.com/en-us/sync/bb736753.aspx 而不是BITS。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top