包 | air.update |
类 | public class ApplicationUpdaterUI |
继承 | ApplicationUpdaterUI EventDispatcher Object |
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
若要在 JavaScript 代码中使用此类,请加载 applicationupdater_ui.swf 文件(AIR SDK 中提供),如下所示:
<script src="applicationupdater_ui.swf" type="application/x-shockwave-flash">
管理应用程序的更新可能非常复杂。AIR 更新框架提供的 API 可帮助开发人员在 AIR 应用程序中提供良好的更新功能。AIR 更新框架中的功能帮助开发人员完成以下工作:
根据某一时间间隔或用户请求定期检查更新
从 Web 源下载 AIR 文件(更新)
在首次运行新安装的版本时向用户发出警告
确认用户希望检查更新
向用户显示有关新的更新版本的信息
向用户显示下载进度和错误信息
AIR 更新框架允许您将有关 AIR 应用程序更新版本的信息存储在简单 XML 配置文件中。对于大多数应用程序,设置这些配置文件以及包括一些基本代码可以为最终用户提供良好的更新功能。
AIRUpdateUI 类实现默认的用户界面,您的应用程序可以使用该用户界面。该示例用户界面为用户提供了与应用程序更新相关的基本信息和选项。
更新过程要经历一系列状态:
状态 | 说明 |
---|---|
未初始化 | updater 对象尚未初始化。 |
正在初始化 | updater 对象正在初始化。 |
就绪 | updater 对象初始化完毕 |
检查之前 | updater 对象尚未检查更新描述符文件。 |
正在检查 | updater 对象正在检查更新描述符文件。 |
可用 | 更新描述符文件可用。 |
正在下载 | updater 对象正在下载 AIR 文件。 |
已下载 | updater 对象已下载 AIR 文件。 |
正在安装 | updater 对象正在安装 AIR 文件。 |
待处理的安装 | updater 已初始化,但存在未处理的更新。 |
有关使用 AIR 更新框架的详细信息,请参阅用 HTML 和 Ajax 开发 Adobe AIR 应用程序的“更新 AIR 应用程序”一章。
另请参见
属性 | 定义方 | ||
---|---|---|---|
configurationFile : File 设置 delay 和 updateURL 属性值的配置文件所在的位置。 | ApplicationUpdaterUI | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
currentVersion : String [只读 (read-only)] 应用程序的当前版本。 | ApplicationUpdaterUI | ||
delay : Number 定期检查新更新的间隔天数。 | ApplicationUpdaterUI | ||
isCheckForUpdateVisible : Boolean 使“检查更新”、“没有更新”和“更新错误”对话框可见。 | ApplicationUpdaterUI | ||
isDownloadProgressVisible : Boolean 使“下载更新”对话框可见。 | ApplicationUpdaterUI | ||
isDownloadUpdateVisible : Boolean 使“下载更新”对话框可见。 | ApplicationUpdaterUI | ||
isFileUpdateVisible : Boolean 使“文件更新”、“文件没有更新”和“文件错误”对话框可见。 | ApplicationUpdaterUI | ||
isFirstRun : Boolean [只读 (read-only)] 这是否为成功更新之后的第一次运行,如果是,则为 (true),否则为 (false)。 | ApplicationUpdaterUI | ||
isInstallUpdateVisible : Boolean 使“安装更新”对话框可见。 | ApplicationUpdaterUI | ||
isNewerVersionFunction : Function updater 执行版本比较所应该使用的函数。 | ApplicationUpdaterUI | ||
isUnexpectedErrorVisible : Boolean 使“意外错误”对话框可见。 | ApplicationUpdaterUI | ||
isUpdateInProgress : Boolean [只读 (read-only)] 一个布尔型属性,更新正在运行时为 true,否则为 false。 | ApplicationUpdaterUI | ||
localeChain : Array 定义用户界面所使用的语言环境链的数组。 | ApplicationUpdaterUI | ||
previousApplicationStorageDirectory : File [只读 (read-only)] 应用程序存储目录的原有位置(如果更新之后该目录发生过更改)。 | ApplicationUpdaterUI | ||
previousVersion : String [只读 (read-only)] 应用程序的原有版本。 | ApplicationUpdaterUI | ||
prototype : Object [静态]
对类或函数对象的原型对象的引用。 | Object | ||
updateDescriptor : XML [只读 (read-only)] 从更新 URL 下载的更新描述符文件的内容。 | ApplicationUpdaterUI | ||
updateURL : String 更新描述符文件的位置。 | ApplicationUpdaterUI | ||
wasPendingUpdate : Boolean [只读 (read-only)] 是否有被推迟的更新(即使其未能安装),如果有,则为 (true);否则为 false。 | ApplicationUpdaterUI |
方法 | 定义方 | ||
---|---|---|---|
构造函数。 | ApplicationUpdaterUI | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
为指定语言动态添加新的资源束。 | ApplicationUpdaterUI | ||
取消更新过程。 | ApplicationUpdaterUI | ||
启动更新过程。 | ApplicationUpdaterUI | ||
将事件调度到事件流中。 | EventDispatcher | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
指示对象是否已经定义了指定的属性。 | Object | ||
初始化 updater。 | ApplicationUpdaterUI | ||
使用本地 AIR 文件启动更新过程。 | ApplicationUpdaterUI | ||
指示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
指示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。 | EventDispatcher |
事件 | 摘要 | 定义方 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
调用 installUpdate() 方法之后,恰好在安装更新之前将调度此事件。 | ApplicationUpdaterUI | |||
升级过程开始之前,恰好在 updater 尝试下载更新描述符文件之前将调度此事件。 | ApplicationUpdaterUI | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
更新文件下载完毕时将调度此事件。 | ApplicationUpdaterUI | |||
如果在连接或下载更新文件时出错,将调度此事件。 | ApplicationUpdaterUI | |||
调用 downloadUpdate() 方法并建立到服务器的连接之后将调度此事件。 | ApplicationUpdaterUI | |||
初始化过程中或更新过程中出错时(如果发生某种意外情况),将调度此事件。 | ApplicationUpdaterUI | |||
验证调用 installFromAIRFile() 方法过程中作为 airFile 参数传递的文件时,若出错,将调度此事件。 | ApplicationUpdaterUI | |||
updater 对调用 installFromAIRFile() 方法过程中的文件验证成功后,将调度此事件。 | ApplicationUpdaterUI | |||
初始化完成之后,将调度此事件。 | ApplicationUpdaterUI | |||
初始化完成之后,将调度此事件。 | ApplicationUpdaterUI | |||
如果尝试下载或分析更新描述符文件时出错,将调度此事件。 | ApplicationUpdaterUI | |||
updater 成功下载并解释更新描述符文件之后,将调度此事件。 | ApplicationUpdaterUI |
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> <defaultUI> <dialog name="checkForUpdate" visible="true" /> <dialog name="downloadUpdate" visible="false" /> <dialog name="downloadProgress" visible="true" /> <dialog name="installUpdate" visible="true" /> </defaultUI> </configuration>
不必加载配置文件,可以使用 ActionScript JavaScript 代码设置 ApplicationUpdaterUI 对象的以下属性:delay
、isCheckForUpdateVisible
、isDownloadProgressVisible
、isDownloadUpdateVisible
、isFileUpdateVisible
、isInstallUpdateVisible
和 updateURL
属性。
public function get configurationFile():File
public function set configurationFile(value:File):void
另请参见
currentVersion | 属性 |
currentVersion:String
[只读 (read-only)] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
应用程序的当前版本。在调用 initialize()
方法的过程中设置此属性。将其设置为应用程序描述符文件中的版本。
public function get currentVersion():String
delay | 属性 |
delay:Number
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
定期检查新更新的间隔天数。
值为 0(默认值)时表示计时器未处于活动状态,因此不进行任何定期检查。可以通过此属性或通过配置文件设置延迟。使用这两种方法设置此值后,将使用以此属性设置的值。
默认值为 0.
public function get delay():Number
public function set delay(value:Number):void
另请参见
isCheckForUpdateVisible | 属性 |
isCheckForUpdateVisible:Boolean
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
使“检查更新”、“没有更新”和“更新错误”对话框可见。设置为 true
时,updater 显示这些对话框作为更新过程的一部分。在更新配置文件中也可以设置此属性。使用此属性设置的值优先于更新配置文件中的设置。
public function get isCheckForUpdateVisible():Boolean
public function set isCheckForUpdateVisible(value:Boolean):void
isDownloadProgressVisible | 属性 |
isDownloadProgressVisible:Boolean
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
使“下载更新”对话框可见。设置为 true
时,updater 显示此对话框作为更新过程的一部分。在更新配置文件中也可以设置此属性。使用此属性设置的值优先于更新配置文件中的设置。
public function get isDownloadProgressVisible():Boolean
public function set isDownloadProgressVisible(value:Boolean):void
isDownloadUpdateVisible | 属性 |
isDownloadUpdateVisible:Boolean
[读写] 运行时版本: | AIR 1.5 |
使“下载更新”对话框可见。设置为 true
时,updater 显示这些对话框作为更新过程的一部分。在更新配置文件中也可以设置此属性。使用此属性设置的值优先于更新配置文件中的设置。
public function get isDownloadUpdateVisible():Boolean
public function set isDownloadUpdateVisible(value:Boolean):void
isFileUpdateVisible | 属性 |
isFileUpdateVisible:Boolean
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
使“文件更新”、“文件没有更新”和“文件错误”对话框可见。设置为 true
时,updater 显示这些对话框作为更新过程的一部分。在更新配置文件中也可以设置此属性。使用此属性设置的值优先于更新配置文件中的设置。
public function get isFileUpdateVisible():Boolean
public function set isFileUpdateVisible(value:Boolean):void
isFirstRun | 属性 |
isFirstRun:Boolean
[只读 (read-only)] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
这是否为成功更新之后的第一次运行,如果是,则为 (true
),否则为 (false
)。updater 在调用 initialize()
方法的过程中设置此值。如果需要将数据从一个版本迁移到另一个版本,则开发人员应该核实 isFirstRun
已设置为 true
。
public function get isFirstRun():Boolean
另请参见
isInstallUpdateVisible | 属性 |
isInstallUpdateVisible:Boolean
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
使“安装更新”对话框可见。设置为 true
时,updater 显示此对话框作为更新过程的一部分。在更新配置文件中也可以设置此属性。使用此属性设置的值优先于更新配置文件中的设置。
public function get isInstallUpdateVisible():Boolean
public function set isInstallUpdateVisible(value:Boolean):void
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
isUnexpectedErrorVisible | 属性 |
isUnexpectedErrorVisible:Boolean
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
使“意外错误”对话框可见。设置为 true
时,Application Updater 显示此对话框作为更新过程的一部分。在更新配置文件中也可以设置此属性。使用此属性设置的值优先于更新配置文件中的设置。
public function get isUnexpectedErrorVisible():Boolean
public function set isUnexpectedErrorVisible(value:Boolean):void
isUpdateInProgress | 属性 |
isUpdateInProgress:Boolean
[只读 (read-only)] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
一个布尔型属性,更新正在运行时为 true
,否则为 false
。
public function get isUpdateInProgress():Boolean
localeChain | 属性 |
localeChain:Array
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
定义用户界面所使用的语言环境链的数组。一般只有 JavaScript (HTML) 开发人员使用此属性。
Flex 开发人员可以使用 ResourceManager 处理语言环境链。
默认情况下,在基于 HTML 的应用程序中,在 Capabilities.languages
数组中的那些语言与用户界面支持的十种语言之间对语言进行排序。如果未找到匹配项,则用户界面使用英语。
下面的 JavaScript 示例使用 AIR SDK 中所含的 AIR HTML 本地化框架。它根据语言列表对语言进行排序,然后将英语设置为默认的备用语言:
appUpdater.addResources("ro_RO", {titleCheck: "Titlu", msgCheck: "Mesaj", btnCheck: "Buton"}); appUpdater.addResources("hu", {titleCheck: "C?m", msgCheck: "?zenet"}); var languages = ["ro", "hu"]; languages = languages.concat(air.Capabilities.languages); var sortedLanguages = air.Localizer.sortLanguagesByPreference(languages, air.Capabilities.language, "en-US"); sortedLanguages.push("en-US"); appUpdater.localeChain = sortedLanguages;
public function get localeChain():Array
public function set localeChain(value:Array):void
另请参见
previousApplicationStorageDirectory | 属性 |
previousApplicationStorageDirectory:File
[只读 (read-only)] 语言版本: | 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 | 属性 |
previousVersion:String
[只读 (read-only)] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
应用程序的原有版本。在调用 initialize()
方法的过程中设置此属性。返回升级之前应用程序的原有版本(仅当 isfirstRun
为 true
时设置);否则将其设置为 null
。
public function get previousVersion():String
updateDescriptor | 属性 |
updateDescriptor:XML
[只读 (read-only)] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
从更新 URL 下载的更新描述符文件的内容。只有在 updater 对象调度 updateStatus
事件之后,此属性才为非 null。
public function get updateDescriptor():XML
updateURL | 属性 |
updateURL:String
[读写] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
更新描述符文件的位置。可以接受对 URLRequest 路径有效的任何位置。这是 updater 所需的唯一一个必要设置。可以通过此属性或通过配置文件来设置更新 URL。使用这两种方法设置此值后,updater 将使用以此属性设置的值。
public function get updateURL():String
public function set updateURL(value:String):void
另请参见
wasPendingUpdate | 属性 |
wasPendingUpdate:Boolean
[只读 (read-only)] 语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
是否有被推迟的更新(即使其未能安装),如果有,则为 (true
);否则为 false
。updater 在调用 initialize()
方法的过程中设置此属性。使用 wasPendingUpdate
和 isFirstRun
属性检查更新是否未能安装(这种情况下 wasPendingUpdate
设置为 true
,且 isFirstRun
设置为 false
)。
public function get wasPendingUpdate():Boolean
另请参见
ApplicationUpdaterUI | () | 构造函数 |
public function ApplicationUpdaterUI()
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
构造函数。
addResources | () | 方法 |
public function addResources(lang:String, res:Object):void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
为指定语言动态添加新的资源束。JavaScript 开发人员使用此方法为应用程序 updater UI 显示的对话框动态添加新语言。(Flex 开发人员可以直接将新语言添加到“ApplicationUpdaterDialogs”资源束中。)
参数
lang:String —
语言代码(如 "ro" 代表罗马尼亚语)。
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
res:Object —
该对象包含供翻译的键和值。这些键是语言属性文件中的键。下表列出了可能的键(属性名称)。
|
另请参见
cancelUpdate | () | 方法 |
public function cancelUpdate():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
取消更新过程。调用此方法将取消所有未处理的下载,删除所有不完整的下载文件,以及重新启动定期检查计时器。
除状态机处于“uninitialized”或“initializing”状态之外的任何时候都可以取消更新过程。在“uninitialized”或“initializing”状态下调用此方法时,它不会执行任何操作。
checkNow | () | 方法 |
public function checkNow():void
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
启动更新过程。调用此方法不会使定期检查计时器停止;但是,此方法可以检测出更新过程正在运行中,并将跳过当前遍历。
只有当前状态为“Ready”时此方法才会执行。
此方法可能导致 updater 对象调度以下事件:
checkForUpdate: — 恰好在更新过程开始之前调度此事件。 |
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
的应用程序,此函数很有用。
参数
file:File — 要安装的本地 AIR 文件。 |
fileUpdateStatus: — updater 成功验证 AIR 文件之后将调度此事件。 | |
updateError: — 如果尝试分析更新描述符文件时出错,将调度此事件。 |
beforeInstall | 事件 |
air.update.events.UpdateEvent
air.update.events.UpdateEvent.BEFORE_INSTALL
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
调用 installUpdate()
方法之后,恰好在安装更新之前将调度此事件。某些情况下,最好在此时阻止更新的安装,这是因为运行时退出应用程序以安装更新时,用户可能会丢失所有当前工作。
调用此事件的 preventDefault()
方法可将安装推迟到下一次重新启动。如果调用 preventDefault()
方法,则在此应用程序会话过程中不能再启动其它更新过程(通过调用 installUpdate()
方法或因定期检查)。
UpdateEvent.BEFORE_INSTALL
常量为 beforeInstall
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles
|
false
|
cancelable
|
false ;没有要取消的默认行为。
|
currentTarget
| 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target
| updater 对象。 |
checkForUpdate | 事件 |
air.update.events.UpdateEvent
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
air.update.events.UpdateEvent.DOWNLOAD_COMPLETE
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
更新文件下载完毕时将调度此事件。
UpdateEvent.DOWNLOAD_COMPLETE
常量为 downloadComplete
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles
|
false
|
cancelable
|
false ;没有要取消的默认行为。
|
currentTarget
| 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target
| updater 对象。 |
downloadError | 事件 |
air.update.events.DownloadErrorEvent
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 类型)。 |
16807 | 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
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
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
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
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
air.update.events.UpdateEvent.INITIALIZED
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
初始化完成之后,将调度此事件。
此事件具有以下只读属性:
isFirstRun
(布尔型)如果这是成功更新之后的第一次运行,则为 true
,否则为 false
。
previousVersion
(字符串)应用程序在升级之前的原有版本(仅在 isfirstRun
为 true
时设置)。
currentVersion
(字符串)当前安装版本的应用程序描述符文件中的版本。
UpdateEvent.INITIALIZED
常量为 initialized
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles
|
false
|
cancelable
|
false ;没有要取消的默认行为。
|
currentTarget
| 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target
| updater 对象。 |
progress | 事件 |
flash.events.ProgressEvent
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
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
air.update.events.StatusUpdateEvent.UPDATE_STATUS
语言版本: | ActionScript 3.0 |
运行时版本: | AIR 1.5 |
updater 成功下载并解释更新描述符文件之后,将调度此事件。
StatusUpdateEvent.UPDATE_STATUS
常量为 updateStatus
事件定义事件对象的 type
属性的值。
此事件具有以下属性:
属性 | 值 |
---|---|
available
|
如果更新描述符文件指定的版本与当前应用程序的版本不同,则设置为 true ;否则(版本相同)为 false 。
|
details
|
为每种受支持的语言定义 details 字符串的数组。如果没有本地化的说明,则将此属性定义为其中第一个元素为空字符串 ("" )、第二个元素为 details 字符串的数组。有本地化的说明时,数组中的每个元素都是含有两个元素的数组自身。第一个元素是语言环境代码,第二个元素是说明。例如,以下数组有两种语言(美国英语和法语)的子数组:["en-US", "Hello World"], ["fr", "Bonjour monde"] 。列出语言的顺序与更新描述符中的顺序相同。
|
version
| 代表新的可用版本的字符串 |