Air自动升级(AIR update framework 入门)
来源:互联网 发布:阿里云服务器端口 编辑:程序博客网 时间:2024/06/07 03:26
AIR update framework可以让你的AIR应用程序支持更新,并且已经被AIR 1.5支持。
准备
AIR update framework已经加入到最新的flex sdk了。我一直用的是flex builder3,sdk是3.0.0,所以需要下载最新的sdk 3.4.0和air 1.5 sdk。上http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+3和http://www.adobe.com/products/air/tools/sdk分别下载吧。把他们解压到一个文件夹里(不会有覆盖的),这样最新的sdk就弄好了。下面就可以配置到flex builder里,不清楚的可以见这里。
update原理
说来也比较简单(adobe的framework也不见得多高明),在网站上准备一个update.xml来定义更新的信息,比如最新的版本号和对应的AIR文件。air update framework api 会去访问那个update.xml和现在的版本号比较,如果有更新就下载update.xml定义的air文件并安装,来达到更新的目的。
开始开发
首先我们需要了解下AIR update framework API。打开livedoc,找到air.update.*,它的API不多,我们主要关注这个,ApplicationUpdaterUI,它所管理的就是update的整个过程和界面。网上有介绍说是用configuration file来定义update过程,这是可以的,不过我发现简单的设置下ApplicationUpdaterUI也有同样的效果。入门嘛当然看简单的。设置的话要关注几个isXXXXVisible样式的public property,它们就是定义某些界面是否可见,比如isCheckForUpdateVisible,就是指一个检查是否有更新的界面是否会显示,如果你想要悄悄的检测而不弹出界面的话就设false。默认的它们都是true。来看看我的代码:
update.xml是部署在服务器上的“更新文件”,简单的将,它是个配置文件,用来告诉你的AIR程序,比如目前的最新版本号啦,更新文件在哪里啦,还有经典的“what’s new”啦等等。下面是一个例子:
<?xml version="1.0" encoding="utf-8" ?>
1 This is a test appliction2 how do you think about it.
]]> 相信也没啥好解释的,基本上这么个结构就能对付大多数需要了。version就是当前的更新版本号,可能会疑惑,更新包的版本号和version是不是一样呢,我个人认为不必相同(最好一样啦),因为更新包是一个打包好(压缩过)的文件,读取它的版本信息不太现实,于是才有这个version节点的出现。description的内容会显示在更新界面的下方,让用户了解下新版本有哪些改动。
其实观察下air update framework,也算比较简单易用了。如果你打算要点牛X的功能(update的确需要长远的考虑),还是建议要好好的扩展下update.xml,比如针对不同旧版本有不同的升级方案,强制升级等等
updateURL,它就是前面所说的update.xml(名字可以变)。当air update framework initialized 以后就可以开始check了(方式随你),由于我把isCheckForUpdateVisible设为false,检查更新的界面就不会显示,如果有更新它就会直接弹出提醒页面的。下面?没有啦,air update framework都帮我们做掉了,开始测试吧。
我遇到的几个ERROR
- 16824:注意下版本号的写法,反正我一开始写了v0.1什么的,好像就报这错误,如果改成0.1这样的标准格式,就没事。
- 16828:注意了,在flex builder里测试就会遇到这样的错误,安装好了就不会。
- Air自动升级(AIR update framework 入门)
- AIR update framework 入门
- air 桌面软件版本自动更新 air update framework入门
- Using the Adobe AIR update framework
- Using the Adobe AIR update framework
- AIR-检查升级
- Air批处理自动编译
- AIR BETA2如何升级到AIR BETA3(一)
- AIR BETA2如何升级到AIR BETA3(二) 之URLRequest
- Air Raid(匈牙利)
- 基于ActionScript 3 的Flex Air 教程 入门(一)
- AIR android 开发入门(一)环境搭建
- HDU 1151 Air Raid (最小路径覆盖入门级)
- MacBook Air上的bash升级
- 升级FlashBuilder 4.6的Air SDK
- Flex AIR)创建“不规则形状”的Air透明窗体
- flex4/air 护眼健康卫士(源码/air安装包)
- Flex AIR)创建“不规则形状”的Air透明窗体
- Kill 掉一个进程
- jquery验证用户名是否存在
- ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...)
- Mysql中limit的用法详解
- 为程序添加版本自动更新功能(转+详细分析)
- Air自动升级(AIR update framework 入门)
- FF IE 得到input.text textarea 光标,更改光标位置 备忘
- python加上-O参数, 生成优化后的*.pyo文件
- [转] 在使用水晶报表时数据库登录对话框,要求输入登录密码啊?是怎么回事啊,如何解决?
- Nhibernate常见的错误
- Android 屏幕截屏,并将之生成视频文件
- 一款免费开发OA系统的平台
- mysql 创建 表 sql语句 带主键和外键
- 关于C#中派生类调用基类构造函数的理解