最近由于项目需要,制作了一个任务编辑器,主要是给策划用来填任务的。
从上周给出第一个版本后开始,因为出现了一些BUG,所以就一直在持续的跟进,修改BUG。
程序更新方式非常老土,就是直接把安装包发给策划,让策划覆盖安装,这样的用户体验非常不好,所以就找了一下AIR程序自动更新的资料。
网上有一个相关的库可以很轻松的达到自动更新的目的
然后需要有一个WEB服务器用来存放最新的AIR安装包以及版本描述文件,关于WEB服务器可以参考:APACHE服务器的配置
下面是版本描述文件示例:
<?
xml version="1.0" encoding="utf-8"
?>
< currentVersion
version ="v11.04.23.16"
downloadLocation ="http://192.168.3.129/TaskEditor/TaskEditor.air"
forceUpdate ="false"
message ="更新有奖哦亲~" />
< currentVersion
version ="v11.04.23.16"
downloadLocation ="http://192.168.3.129/TaskEditor/TaskEditor.air"
forceUpdate ="false"
message ="更新有奖哦亲~" />
其中 downloadLocation 是最新版本安装包的路径。
forceUpdate表示是否弹出提示用户更新的窗口。
message表示弹出框中显示的信息。
有了以上的前提工作后,就可以在你的AIR程序中加入一条语句:
var update:UpdateManager = new UpdateManager("http://192.168.3.129/TaskEditor/update.xml", true);
其中第二个参数表示是否自动检测最新版本,如果不自动检测,可以通过调用方法:
update.checkForUpdate();
最后一步,配置你的src目录下的xxx-app.xml文件
<!--
An application version designator (such as "v1", "2.5", or "Alpha 1"). Required.
-->
< version > v11.04.23.16 </ version >
< version > v11.04.23.16 </ version >
当<version>标签中间的版本号和update.xml中version的值不一致的时候,就会提示用户更新。
这一切都是自动化的~