自动更新软件的设计

Jam*_* P. 3 java desktop auto-update

简而言之,您如何设计支持直接可靠的自动更新的应用程序?

我对如何切割以及涉及的各种操作感兴趣.

编辑:这与此问题相关联:自毁应用程序

Lyn*_*ing 5

需要处理的问题:

  • 如果执行更新的应用程序本身正在更新,则需要重新启动,或者需要执行存根以将文件移动到位(以避免文件使用中的错误.)

  • 无论您通过Web请求与哪些服务进行通信来检索文件,都需要知道您正在运行的已安装软件包的当前版本.它会动态构建文件URL列表,甚至可以压缩文件并将其放在客户端的单个URL中.否则,让客户端遍历URL列表,拉动每个文件.每个URL都与一个操作相关联,例如"复制"或"执行".

  • 处理每个检索到的文件并将其安装到客户端.

  • 更新需要是原子的(如果操作的任何部分失败,则能够回滚.)您不希望处于部分状态.