包 | air.update |
类 | public class ApplicationUpdater |
继承 | ApplicationUpdater EventDispatcher Object |
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
此类包括在 Adobe AIR SDK 所含的 applicationupdater_ui.swc 文件中。applicationupdater_ui.swc 文件包含在 AIR SDK 的 frameworks/libs/air 目录下。
创建 Adobe AIR 项目时,Adobe® Flex™ Builder™ 将自动加载此类。使用 Adobe® Flex™ SDK 编译应用程序时,应当包括此 SWC 文件。
管理应用程序的更新可能非常复杂。AIR 更新框架提供的 API 可帮助开发人员在 AIR 应用程序中提供良好的更新功能。AIR 更新框架中的功能帮助开发人员完成以下工作:
-
根据某一时间间隔或用户请求定期检查更新
-
从 Web 源下载 AIR 文件(更新)
-
在首次运行新安装的版本时向用户发出警告
-
确认用户希望检查更新
-
向用户显示有关新的更新版本的信息
-
向用户显示下载进度和错误信息
AIR 更新框架允许您将有关 AIR 应用程序更新版本的信息存储在简单 XML 配置文件中。对于大多数应用程序,设置这些配置文件以及包括一些基本代码可以为最终用户提供良好的更新功能。
如果要定义自己的用户界面以便与 AIR 更新框架配合使用,请使用 AIRUpdater 类。
更新过程包括一系列状态。updater 对象的 currentState
属性反映 updater 的当前状态:
currentState 值 | 说明 |
---|---|
"UNINITIALIZED" | updater 尚未初始化。 |
"INITIALIZING" | updater 正在初始化。 |
"READY" | updater 已初始化 |
"BEFORE_CHECKING" | updater 尚未检查更新描述符文件。 |
"CHECKING" | updater 正在检查更新描述符文件。 |
"AVAILABLE" | 更新描述符文件可用。 |
"DOWNLOADING" | updater 正在下载 AIR 文件。 |
"DOWNLOADED" | updater 已下载 AIR 文件。 |
"INSTALLING" | updater 正在安装 AIR 文件。 |
"PENDING_INSTALLING" | updater 已初始化,但存在未处理的更新。 |
使用 AIR Debug Launcher (ADL) 应用程序测试某个应用程序时,尝试更新该应用程序会导致 IllegalOperationError 异常。
仅桌面配置文件支持 AIR 更新框架。扩展桌面应用程序(使用本机安装程序安装的应用程序)和移动配置文件(使用 ActionScript 3.0 编写的 iPhone 应用程序)都不支持该更新框架。在运行时检查 Updater.isSupported
属性以查看是否支持更新框架。
有关使用 AIR 更新框架的详细信息,请参阅构建 Adobe AIR 应用程序中的“更新 AIR 应用程序”一章。
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
configurationFile : File
设置 delay 和 updateURL 属性值的配置文件所在的位置。 | ApplicationUpdater | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
currentState : String [只读]
updater 的内部状态。 | ApplicationUpdater | ||
currentVersion : String [只读]
应用程序的当前版本。 | ApplicationUpdater | ||
delay : Number
定期检查新更新的间隔天数。 | ApplicationUpdater | ||
isFirstRun : Boolean [只读]
这是否为成功更新之后的第一次运行,如果是,则为 (true),否则为 (false)。 | ApplicationUpdater | ||
isNewerVersionFunction : Function
updater 执行版本比较所应该使用的函数。 | ApplicationUpdater | ||
previousApplicationStorageDirectory : File [只读]
应用程序存储目录的原有位置(如果更新之后该目录发生过更改)。 | ApplicationUpdater | ||
previousVersion : String [只读]
应用程序的原有版本。 | ApplicationUpdater | ||
updateDescriptor : XML [只读]
从更新 URL 下载的更新描述符文件的内容。 | ApplicationUpdater | ||
updateURL : String
更新描述符文件的位置。 | ApplicationUpdater | ||
wasPendingUpdate : Boolean [只读]
是否有被推迟的更新,即使安装失败,如果有,则为 (true);否则为 false。 | ApplicationUpdater |
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | ApplicationUpdater | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
取消更新过程。 | ApplicationUpdater | ||
异步下载并解释更新描述符文件。 | ApplicationUpdater | ||
启动更新过程。 | ApplicationUpdater | ||
将事件调度到事件流中。 | EventDispatcher | ||
异步下载更新文件。 | ApplicationUpdater | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
初始化 updater。 | ApplicationUpdater | ||
使用本地 AIR 文件启动更新过程。 | ApplicationUpdater | ||
安装更新文件。 | ApplicationUpdater | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
调用 installUpdate() 方法之后,恰好在安装更新之前将调度此事件。 | ApplicationUpdater | |||
升级过程开始之前,恰好在 updater 尝试下载更新描述符文件之前将调度此事件。 | ApplicationUpdater | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
更新文件下载完毕时将调度此事件。 | ApplicationUpdater | |||
如果在连接或下载更新文件时出错,将调度此事件。 | ApplicationUpdater | |||
调用 downloadUpdate() 方法并建立到服务器的连接之后将调度此事件。 | ApplicationUpdater | |||
初始化过程中或更新过程中出错时(如果发生某种意外情况),将调度此事件。 | ApplicationUpdater | |||
验证调用 installFromAIRFile() 方法过程中作为 airFile 参数传递的文件时,若出错,将调度此事件。 | ApplicationUpdater | |||
updater 成功验证调用 installFromAIRFile() 方法过程中的文件之后将调度此事件。 | ApplicationUpdater | |||
初始化完成之后,将调度此事件。 | ApplicationUpdater | |||
在下载更新文件时进行调度。 | ApplicationUpdater | |||
如果尝试下载或分析更新描述符文件时出错,将调度此事件。 | ApplicationUpdater | |||
updater 成功下载并解释更新描述符文件之后,将调度此事件。 | ApplicationUpdater |
configurationFile | 属性 |
configurationFile:File
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
设置 delay
和 updateURL
属性值的配置文件所在的位置。如果此属性指向不存在的文件,则调用 initialize()
方法将引发错误。
下面是一个示例配置文件:
<?xml version="1.0" encoding="utf-8"?> <configuration xmlns="http://ns.adobe.com/air/framework/update/configuration/1.0" > <url>app:/server/update.xml</url> <delay>1</delay> </configuration>
不必加载配置文件,使用 ActionScript 代码即可设置 delay
和 updateURL
属性。
实现
public function get configurationFile():File
public function set configurationFile(value:File):void
相关 API 元素
currentState | 属性 |
currentState:String
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
updater 的内部状态。此属性可设置为下列值:
-
"UNINITIALIZED"
— updater 尚未初始化。 -
"INITIALIZING"
— updater 正在初始化。 -
"READY"
— updater 已初始化。 -
"BEFORE_CHECKING"
— 尚未检查 updater 中是否有更新描述符文件。 -
"CHECKING"
— updater 正在检查是否有更新描述符文件。 -
"AVAILABLE"
— 更新描述符文件可用。 -
"DOWNLOADING"
— updater 正在下载 AIR 文件。 -
"DOWNLOADED"
— updater 已下载 AIR 文件。 -
"INSTALLING"
— updater 正在安装 AIR 文件。 -
"PENDING_INSTALLING"
— updater 已初始化,但存在未处理的更新。
实现
public function get currentState():String
currentVersion | 属性 |
delay | 属性 |
isFirstRun | 属性 |
isNewerVersionFunction | 属性 |
isNewerVersionFunction:Function
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
updater 执行版本比较所应该使用的函数。默认情况下,更新框架进行版本比较,以检测远程站点的版本是否比所安装应用程序的版本新。但是,有时默认的比较并不符合开发人员的版本控制方案。设置此属性可提供进行比较的新函数。
默认的比较函数接受类似 x.y.z 的版本,其中 x、y 和 z 可以包含字母和数字。默认的比较函数能够识别一些特殊情况。如果测试函数在版本字符串中找到“alpha”
、“beta”
或“rc”
,则顺序为 alpha
< beta
< rc
。
实现
public function get isNewerVersionFunction():Function
public function set isNewerVersionFunction(value:Function):void
示例 ( 如何使用本示例 )
appUpdate
updater 对象的自定义函数 customFn
。我们特意将示例函数设计得很简单。自定义函数应根据版本控制方案规则返回一个布尔值。
appUpdate.isNewerVersionFunction = customFn; function customFn (currentVersion:String, updateVersion:String):Boolean { return updateVersion > currentVersion; }
previousApplicationStorageDirectory | 属性 |
previousApplicationStorageDirectory:File
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
应用程序存储目录的原有位置(如果更新之后该目录发生过更改)。进行含证书迁移的升级之后,应用程序存储目录位置将发生更改。如果不进行证书迁移,则用户更新应用程序时,应用程序存储目录不会发生更改。且将此属性设置为 null
。在调用 initialize()
方法的过程中设置此属性。
如果开发人员用 ADT 打包 AIR 文件时使用 -migrate
选项,则该开发人员可以用新的证书为 AIR 应用程序的新版本签名。如果 AIR 应用程序的新版本使用新的签名证书,则用户安装新版本时,应用程序的本地存储目录将发生更改。使用此属性将数据从旧的应用程序存储目录转移到新的应用程序存储目录 (File.applicationStorageDirectory
)。有关详细信息,请参阅《Adobe AIR 开发人员指南》中“使用命令行工具创建 AIR 应用程序”一章的“为 AIR 文件签名以更改应用程序证书”。
实现
public function get previousApplicationStorageDirectory():File
previousVersion | 属性 |
updateDescriptor | 属性 |
updateURL | 属性 |
wasPendingUpdate | 属性 |
wasPendingUpdate:Boolean
[只读] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
是否有被推迟的更新,即使安装失败,如果有,则为 (true
);否则为 false
。updater 在调用 initialize()
方法的过程中设置此属性。使用 wasPendingUpdate
和 isFirstRun
属性检查更新是否未能安装(这种情况下 wasPendingUpdate
设置为 true
,且 isFirstRun
设置为 false
)。
实现
public function get wasPendingUpdate():Boolean
相关 API 元素
ApplicationUpdater | () | 构造函数 |
public function ApplicationUpdater()
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
构造函数。
cancelUpdate | () | 方法 |
public function cancelUpdate():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
取消更新过程。调用此方法将取消所有未处理的下载,删除所有不完整的下载文件,以及重新启动定期检查计时器。
除状态机处于“UNINITIALIZED”或“INITIALIZING”状态之外的任何时候都可以取消更新过程。在“UNINITIALIZED”或“INITIALIZING”状态下调用此方法时,它不会执行任何操作。
checkForUpdate | () | 方法 |
public function checkForUpdate():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
异步下载并解释更新描述符文件。调用此方法会将 updater 的状态前移至“CHECKING”。请仅在取消 checkForUpdate
事件后调用此方法。
只有 updater 为“BEFORE_CHECKING”状态时此方法才会执行。
事件
updateStatus: — updater 已成功下载并解释了更新描述符文件。
| |
updateError: — 尝试下载或分析更新描述符文件时出错。
|
checkNow | () | 方法 |
public function checkNow():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
启动更新过程。调用此方法不会使定期检查计时器停止;但是,此方法可以检测出更新过程正在运行中,并将跳过当前遍历。
只有当前状态为“READY”时此方法才会执行。
此方法可能导致 updater 对象调度以下事件:
事件
checkForUpdate: — 恰好在更新过程开始之前调度此事件。
|
downloadUpdate | () | 方法 |
public function downloadUpdate():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
异步下载更新文件。调用此方法会将状态机前移至“DOWNLOADING”。只有当 StatusUpdateEvent.UPDATE_STATUS 事件的 available 属性为 true 时取消该事件后才需要调用此方法。
只有当前状态为“AVAILABLE”时此方法才会执行。
事件
downloadStart: — 建立到服务器的连接之后将调度此事件。
| |
progress: — 初始化完成之后,将调度此事件。
| |
downloadError: — 如果在连接或下载更新文件时出错,将调度此事件。HTTP 状态无效(如“404 - 找不到文件”)时也会调度此事件。
|
initialize | () | 方法 |
public function initialize():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
初始化 updater。调用此方法可执行以下操作:
-
它将初始化更新框架,以静默方式同步安装所有未处理的更新。由于此方法可能会重新启动应用程序,因此在应用程序启动过程中应该调用此方法。
-
它检查是否有被推迟的更新,如果有将安装该更新。
-
如果前一次更新有错误,则它将从存储区域中清除更新文件和版本信息。
-
如果定期检查计时器延迟已到期,则它将启动更新过程;否则它将启动定期检查计时器。但是,在使用 AIR Debug Launcher (ADL) 应用程序测试某个应用程序时,尝试更新应用程序会导致 IllegalOperationError 异常。
事件
initialized: — 初始化完成。
| |
error: — 初始化过程中有错。
|
installFromAIRFile | () | 方法 |
public function installFromAIRFile(file:File):void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
使用本地 AIR 文件启动更新过程。
如果正在运行更新过程,则调用此方法不起作用(如果状态不是 "DOWNLOADED"
)。
对于在应用程序描述符文件中将 customUpdateUI
元素设置为 true
的应用程序,此函数很有用。
在使用 AIR Debug Launcher (ADL) 应用程序测试某个应用程序时,调用此方法会导致 IllegalOperationError 异常。
参数
file:File — 要安装的本地 AIR 文件。
|
事件
fileUpdateStatus: — updater 成功验证 AIR 文件之后将调度此事件。
| |
updateError: — 如果尝试分析更新描述符文件时出错,将调度此事件。
|
installUpdate | () | 方法 |
public function installUpdate():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
安装更新文件。调用此方法会将状态机前移至“INSTALLING”,且只有在取消 downLoadComplete
事件后才需要调用此方法。
请在 updater 为“DOWNLOADED”状态时调用此方法。在任何其他状态下调用此方法都不起作用。
在使用 AIR Debug Launcher (ADL) 应用程序测试某个应用程序时,调用此方法会导致 IllegalOperationError 异常。
事件
beforeInstall: — 恰好在安装更新之前调度此事件。某些情况下,最好在此时阻止更新的安装,这是因为运行时退出应用程序以安装更新时,用户可能会丢失所有当前工作。
|
beforeInstall | 事件 |
air.update.events.UpdateEvent
属性 UpdateEvent.type =
air.update.events.UpdateEvent.BEFORE_INSTALL
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
调用 installUpdate()
方法之后,恰好在安装更新之前将调度此事件。某些情况下,运行时退出应用程序以安装更新时,用户可能会丢失所有当前工作,这种情况下最好阻止安装更新。
调用此事件的 preventDefault()
方法可将安装推迟到下一次重新启动。如果调用 preventDefault()
方法,则在此应用程序会话过程中不能再启动其他更新过程(通过调用 installUpdate()
方法或通过定期检查)。
ApplicationUpdater 库的默认行为是下载更新描述符文件。可以调用 preventDefault()
方法取消此行为。
UpdateEvent.BEFORE_INSTALL
常量为 beforeInstall
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | updater 对象。 |
checkForUpdate | 事件 |
air.update.events.UpdateEvent
属性 UpdateEvent.type =
air.update.events.UpdateEvent.CHECK_FOR_UPDATE
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
升级过程开始之前,恰好在 updater 尝试下载更新描述符文件之前将调度此事件。updater 调度此事件的原因可以是直接调用 checkNow()
方法或定期检查计时器到期。
UpdateEvent.CHECK_FOR_UPDATE
常量为 checkForUpdate
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | updater 对象。 |
downloadComplete | 事件 |
air.update.events.UpdateEvent
属性 UpdateEvent.type =
air.update.events.UpdateEvent.DOWNLOAD_COMPLETE
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
更新文件下载完毕时将调度此事件。
通常使用此事件显示一条消息,询问用户是否要继续安装更新。
ApplicationUpdater 库的默认行为是自动调用 installUpdate()
方法。
UpdateEvent.DOWNLOAD_COMPLETE
常量为 downloadComplete
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | updater 对象。 |
downloadError | 事件 |
air.update.events.DownloadErrorEvent
属性 DownloadErrorEvent.type =
air.update.events.DownloadErrorEvent.DOWNLOAD_ERROR
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
如果在连接或下载更新文件时出错,将调度此事件。HTTP 状态无效(如“404 - 找不到文件”)时也会调度此事件。
调度此事件时,定期检查计时器将自动重新启动(如果延迟大于 0)。
DownloadErrorEvent.DOWNLOAD_ERROR
常量为 downloadError
事件定义事件对象的 type
属性的值。
DownloadErrorEvent 对象的 errorID
属性是一个整数,用于定义错误信息(请参阅下表)。此外,还具有另一个属性 subErrorID
,该属性可能包含更多错误信息。
errorID 错误代码 | 说明 |
---|---|
16800 | 验证已下载的更新文件时出错。subErrorID 属性可能包含其他信息。 |
16801 | Adobe AIR 文件无效(缺少 application.xml)。 |
16802 | Adobe AIR 文件无效(缺少 MIME 类型)。 |
16803 | Adobe AIR 文件无效(格式)。 |
16804 | Adobe AIR 文件无效(标志无效)。 |
16805 | Adobe AIR 文件无效(压缩方式未知)。 |
16806 | Adobe AIR 文件无效(文件名无效)。 |
16807 | Adobe AIR 文件无效(已损坏)。 |
16808 | 配置文件不存在。 |
16809 | 未设置 updateURL 属性。 |
16810 | 保留。 |
16811 | 配置文件无效(配置版本未知)。 |
16812 | 配置文件无效(缺少 URL)。 |
16813 | 配置文件无效(延迟格式)。 |
16814 | 配置文件无效(defaultUI 值无效)。 |
16815 | 更新描述符无效(描述符版本未知)。 |
16816 | 更新描述符无效(缺少更新版本)。 |
16817 | 更新描述符无效(说明无效)。 |
16818 | 向磁盘保存数据时发生 I/O 错误。subErrorID 属性可能会提供更多信息。 |
16819 | 下载时发生安全错误。subErrorID 属性可能会提供更多信息。 |
16820 | HTTP 状态代码无效。subErrorID 属性可能包含无效的状态代码。 |
16821 | 保留。 |
16822 | 下载时发生 I/O 错误。subErrorID 属性可能会提供更多信息。 |
16823 | 向磁盘保存数据时文件尾出错。subErrorID 属性可能会提供更多信息。 |
16824 | 更新描述符无效。subErrorID 属性可能会提供更多信息。 |
16825 | 更新文件包含应用程序 ID 不同的应用程序。 |
16826 | 更新文件不包含应用程序的更新版本。 |
16827 | 更新文件中包含的版本与更新描述符中的版本不匹配。 |
16828 | 无法更新应用程序,通常是因为应用程序正在 AIR Debug Launcher (ADL) 中运行。 |
16829 | 安装时缺少更新文件。 |
downloadStart | 事件 |
air.update.events.UpdateEvent
属性 UpdateEvent.type =
air.update.events.UpdateEvent.DOWNLOAD_START
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
调用 downloadUpdate()
方法并建立到服务器的连接之后将调度此事件。使用 ApplicationUpdater 库时,可能希望此事件的事件处理函数显示进度栏,从而向用户报告下载进度。
UpdateEvent.DOWNLOAD_START
常量为 downloadStart
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | updater 对象。 |
error | 事件 |
flash.events.ErrorEvent
属性 ErrorEvent.type =
flash.events.ErrorEvent.ERROR
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
初始化过程中或更新过程中出错时(如果发生某种意外情况),将调度此事件。
定义error
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 发生网络操作失败的对象。 |
text | 要显示为错误消息的文本。 |
fileUpdateError | 事件 |
air.update.events.StatusFileUpdateErrorEvent
属性 StatusFileUpdateErrorEvent.type =
air.update.events.StatusFileUpdateErrorEvent.FILE_UPDATE_ERROR
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
验证调用 installFromAIRFile()
方法过程中作为 airFile
参数传递的文件时,若出错,将调度此事件。
StatusUpdateErrorEvent.UPDATE_ERROR
常量为 statusUpdateError
事件定义事件对象的 type
属性的值。
fileUpdateStatus | 事件 |
air.update.events.StatusFileUpdateEvent
属性 StatusFileUpdateEvent.type =
air.update.events.StatusFileUpdateEvent.FILE_UPDATE_STATUS
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
updater 成功验证调用 installFromAIRFile()
方法过程中的文件之后将调度此事件。
StatusUpdateEvent.UPDATE_STATUS
常量为 updateStatus
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
available | 表示除当前应用程序的版本之外是否还有可用的版本,有则为 true ;否则(版本相同)为 false 。 |
path | 调用 installFromAIRFile() 方法的过程中由 airFile 参数指定的更新 File 对象的 nativePath 属性。 |
version | 表示新的更新的版本。 |
initialized | 事件 |
air.update.events.UpdateEvent
属性 UpdateEvent.type =
air.update.events.UpdateEvent.INITIALIZED
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
初始化完成之后,将调度此事件。
UpdateEvent.INITIALIZED
常量为 initialized
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | updater 对象。 |
progress | 事件 |
flash.events.ProgressEvent
属性 ProgressEvent.type =
flash.events.ProgressEvent.PROGRESS
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
在下载更新文件时进行调度。
定义progress
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
bytesLoaded | 在侦听器处理事件时加载的项数或字节数。 |
bytesTotal | 如果加载进程成功,最终将加载的项目或字节总数。 |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 报告进度的对象。 |
updateError | 事件 |
air.update.events.StatusUpdateErrorEvent
属性 StatusUpdateErrorEvent.type =
air.update.events.StatusUpdateErrorEvent.UPDATE_ERROR
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
如果尝试下载或分析更新描述符文件时出错,将调度此事件。
updater 调度此事件时,定期检查计时器将自动重新启动(如果延迟设置大于 0)。updater 调度新的 checkForUpdate
事件时,应用程序应该考虑隐藏所有错误对话框。
StatusUpdateErrorEvent.UPDATE_ERROR
常量为 statusUpdateError
事件定义事件对象的 type
属性的值。
updateStatus | 事件 |
air.update.events.StatusUpdateEvent
属性 StatusUpdateEvent.type =
air.update.events.StatusUpdateEvent.UPDATE_STATUS
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
updater 成功下载并解释更新描述符文件之后,将调度此事件。
如果将 StatusUpdateEvent 对象的 available 属性设置为 true
,则默认行为是开始下载更新。只有在使用 ApplicationUpdater 类时可以阻止默认行为,而使用 ApplicationUpdatorUI 类时不能。
StatusUpdateEvent.UPDATE_STATUS
常量为 updateStatus
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
available | 如果更新描述符文件指定的版本与当前应用程序的版本不同,则设置为 true ;否则(版本相同)为 false 。 |
version | 表示新的可用版本的字符串。 |
details | 为每种受支持的语言定义 details 字符串的数组。如果没有本地化的说明,则将此属性定义为其中第一个元素为空字符串 ("" )、第二个元素为 details 字符串的数组。有本地化的说明时,数组中的每个元素都是含有两个元素的数组自身。第一个元素是语言环境代码,第二个元素是说明。例如,以下数组有两种语言(美国英语和法语)的子数组:["en-US", "Hello World"], ["fr", "Bonjour monde"] 。列出语言的顺序与更新描述符中的顺序相同。详细信息属性的文本在更新描述符文件中指定。 |
versionLabel | (AIR 2.5+) 来自更新的应用程序描述符的版本标签。应该对用户显示版本标签而不是版本。如果没有指定版本标签,则此属性是空字符串。 |
Tue Jun 12 2018, 11:04 AM Z