基于
esky
实现
python
应用的自动升级
一、
esky
介绍
Esky is an auto-update framework for frozen Python applications. It provides a simple API through which apps can find, fetch and install
updates, and a bootstrapping mechanism that keeps the app safe in the face of failed or partial updates. Updates can also be sent as
differential patches.
Esky is currently capable of freezing apps with py2exe, py2app, cxfreeze and bbfreeze. Adding support for other freezer programs should
be easy; patches will be gratefully accepted.
We are tested and running on Python 2.7 Py2app will work on python3 fine, the other freezers not so much.
Esky
是一个
python
编译程序的自动升级框架,
提供简单的
api
实现应用的自动更新
(包括比较版本、
更新版本)
,
esky
支持
py2exe
,
py2app
,
cxfreeze
以及
bbfreeze
等多种
python
打包框架。
二、
esky
安装及说明
1
、
pip
安装
pip install esky
2
、
esky
说明
https://github.com/cloudmatrix/esky/
3
、
esky
教学视频
http://pyvideo.org/pycon-au-2010/pyconau-2010--esky--keep-your-frozen-apps-fresh.html
三、
esky
用法示例
esky
用起来比较简单,我们这里以常用的基于
wx
的
windows
应用举例。
wxpython
下有个
wx.lib.softwareupdate
类,对
wxpython
应用的
esky
升级进行了二次封装。
网上有个现成的示范例子,具体网址:
http://www.blog.pythonlibrary.org/
2013
/
07
/12
/wxpython-updating-your-application-with-esky/
代码很简单,对其中的关键部分进行注释说明(红色字体部分):
复制代码
# ----------------------------------------
# image_viewer2.py
#