小小菜鸟的web菜园子

web开发学习。好记性不如烂笔头。每天进步一点点!

导航

让你的AIR程序自动检测更新,并自动下载、更新到新版本。

程序终于可以自动更新了,酷酷的程序终于不用每次更新以后都自己手动的下载,安装了。~
利用everythingflex的类包,很容易搞定。
步骤如下:

首先 在APP.XML设置你的当前程序版本
大概在第26,27行:
    <!-- An application version designator (such as "v1", "2.5", or "Alpha 1"). Required. -->
    
<version>.2</version>

然后下载everythingflex的类包: everythingflexairlib.swc

把类包copy到你工程的libs文件夹。

命名空间导入类包:
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12" width="770" height="535" backgroundColor="0x787878"
     applicationComplete
="initAppliction()" showFlexChrome="false"
     xmlns
="com.everythingflex.air.components.*">

在script代码段导入包,并生成对象,调用方法:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    
<mx:Script>
        
<![CDATA[
            import com.everythingflex.air.managers.UpdateManager;
            private var um:UpdateManager = new UpdateManager("http://www.yourdomain.com/AIR/UMTest/version.xml",false);
        
]]>
    
</mx:Script>
    
<mx:Button click="um.checkForUpdate()" label="Test for Update"
        horizontalCenter
="0" verticalCenter="0"/>
</mx:WindowedApplication>
第2个参数我使用false,这个代表是否自动检测新版本。TRUE为是,FALSE为否。

你还需要一个XML文件,告知程序要更新到哪一个版本:
<?xml version="1.0" encoding="ISO-8859-1"?>
<currentVersion version=".2"
                       downloadLocation
="http://www.yourdomain.com/AIR/UMTest/UM.air"   
                       forceUpdate
="false"
                       message
="Added new features"/>

downloadLocation是新版本程序的路径。
forceUpdate,是否弹出警告框,提示用户更新程序。
message,警告框中的详细信息。

posted on 2008-04-29 18:43  『小小菜鸟』  阅读(3700)  评论(1编辑  收藏  举报