我的一个爱好应用程序使用 SQLite 后端来存储应用程序数据。该应用程序已设置,以便用户可以单击典型的“检查更新”按钮,该按钮将查询 Web 服务以查看是否有可用更新。如果是,用户单击“更新”按钮并下载新数据库(通过 HTTP),然后将其安装在应用程序中。这个过程目前是“模态的”,因为在下载和安装完成之前,用户不能在应用程序中做任何其他事情。
我正在更新应用程序,我想做的一件事是让这个更新过程发生在幕后,比如 Windows 更新。当应用程序启动时,将查询服务,如果有可用更新,它会自动下载,但在后台,以便用户可以继续工作。下载完成后,系统会提示用户安装更新。
我对BITS进行了广泛的研究,尽管迄今为止我还没有看到任何 API 可以利用该技术,但我已经看到了一些示例代码,并且相信我可以让它工作。
但这是为数据库进行“背景更新”的最佳方法,还是有其他一些解决方案/方法?